浏览器对象模型BOM
你听说过DOM,但还应该知道BOM,即浏览器对象模型(browser object model)。这其实并非官方标准,但所有浏览器都通过对象window来支持它。
window对象
window是全局对象。
我们使用属性和方法时,如果没有指定它所属的对象,默认指的都是window
- 使用
window.onload
,指定了一个事件处理程序,在网页加载完毕后调用它。 - 使用方法
alert
和prompt
时,也涉及了对象window(实际上应该写为window.alert
、window.prompt
)
这两种写法等效的原因:由于window是一个充当全局命名空间的对象(全局对象)。当你声明全局变量或定义全局函数时,它将被作为一个属性存储在对象window中 - 另外,使用对象
document
(如document.getElementById)时,也涉及了对象window(实际上应写为window.document.getElementById
)。因为对象document是对象window的一个属性 - 以此类推,
window对象还提供了其他既有浏览器的有趣属性和方法:
window.setTimeout()
window.setInterval()
window.confirm()
类似于prompt,但用户能够选择单击OK或Cancel按钮。
window.history
这个属性是一个对象,包含浏览历史记录。
window.location
这个属性是当前所显示网页的URL。你也可设置这个属性,让浏览器加载指定的新网页。
window.innerWidth
获取浏览器窗口的宽度
window.innerHeight
获取浏览器窗口的高度
window.close()
这个方法关闭浏览器窗口。
window.print()
使用打印机打印网页。