Fork me on GitHub

高程8.4 screen对象 8.5history对象 8.6小结

属性 说明 IE FF Safari/Chrome Opera
availHeight 屏幕的像素高度减系统部件高度之后的值(只读)
availLeft 未被系统部件占用的最左侧的像素值(只读)    
availTop 未被系统部件占用的最上方 的像素值(只读)    
availWidth 屏幕的像素宽度减系统部件宽度之后的值(只读)
bufferDepth 读,写用于呈现屏外位图的位数      
colorDepth 用于表现颜色的位数;多数系统都是32(只读)
deviceXDPI 屏幕实际的水平DPI(只读)      
deviceYDPI 屏幕实际的垂直DPI(只读)      
fontSmoothingEnabled 表示是否启用了字体平滑(只读)      
height 屏幕的像素高度
left 当前屏幕距左边的像素距离      
logicalXDPI 屏幕逻辑的水平DPI(只读)      
logicalYDPI 屏幕逻辑的垂直DPI(只读)      
pixelDepth 屏幕的位深(只读)  
top 当前屏幕距上边的像素距离      
updateInterval 读,写以毫秒表示的屏幕刷新时间间隔      
width 屏幕的像素宽度
           

8.5 history对象

history对象保存着用户的上网历史

从窗口被打开的那一刻起,因为history是window对象的属性,因此每个浏览器窗口,每个标签页乃至每个框架,都有自己的history对象与特定的window对象关联.出于安全方面的考虑,开发人员无法得知浏览过的URL.不过,借由用户访问过的页面列表,同样可以在不知道实际URL的情况下实现后退和前进.

使用go()方法可以在用户的历史记录中任意跳转,可以向后也可以向前.这个方法接受一个参数,表示向后或向前跳转的页面数的一个整数值.负数表示向后跳转(类似于单击浏览器的"后退"按钮),正数表示向前跳转(类似于单击浏览器的"前进"按钮).

//后退一页
history.go(-1);

//前进一页
history.go(1);

//前进两页
history.go(2);
//跳转到最近的www.baidu.com
history.go(www.baidu.com);

如果历史记录中不包含该字符串,那么这个方法什么也不做.

还可以使用两个简写方法back()和forward()来代替go().顾名思义,这两个方法可以模仿浏览器的"后退"和"前进"按钮.

//后退一页
history.back();

//前进一页
history.forward();

history对象还有一个length属性,保存着历史记录的数量.这个数量包括所有历史记录,即所有向后和向前的记录.

对于加载到窗口,标签页或框架中的第一个页面而言,history.length等于0.

if(history.length==0){
    //这应该是用户打开窗口后的第一个页面
}

注意:当页面的URL改变时,就会生成一条历史记录.在IE8及更高版本,Opera,FF,safari及更高版本以及Chrome中,这里所说的改变包括URL中的hash的变化(因此,设置location.hash会在这些浏览器中生成一条新的历史记录).

8.6 小结

浏览器对象模型(BOM)以window对象为依托,表示浏览器窗口以及页面可见区域.同时,window对象还是ECMAScript中的Global对象,因而所有全局变量和函数都是它的属性,且所有原生的构造函数及其他函数也都存在于它的命名空间下.

在使用框架时,每个框架都有自己的window对象以及所有原生构造函数及其他函数的副本.每个框架都保存在frames集合中,可以通过位置或通过名称来访问.

有一些窗口指针,可以用来引用其他框架,包括父框架.

top对象始终指向最外围的框架,也就是整个浏览器窗口.

parent对象表示包含当前框架的框架,而self对象则回指window.

使用location对象可以通过编程方式来访问浏览器的导航系统.设置相应的属性,可以逐段或整体性地修改浏览器的URL.

调用replace()方法可以导航到一个新的URL,同时该URL会替换浏览器记录中当前显示的页面.

navigator对象提供了与浏览器有关的信息.到底提供哪些信息,很大程度上取决于用户的浏览器,不过,也有一些公共的属性(如userAgent)存在于所有浏览器中.

BOM中还有两个对象:screen和history,但它们的功能有限.screen对象中保存着与客户端显示器有关的信息,这些信息一般只用于站点分析.

posted @ 2015-12-03 00:31  sunshinegirl_7  阅读(177)  评论(0编辑  收藏  举报