简介
IE 3.0和Netscape Navigator 3.0提供了一种特性- BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作。使用BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。使BOM独树一帜且又常常令人怀疑的地方在于,它只是JavaScript的一个部分,没有任何相关的标准。
BOM主要处理浏览器窗口和框架,不过通常浏览器特定的JavaScript扩展都被看做BOM的一部分。这些扩展包括:
弹出新的浏览器窗口
移动、关闭浏览器窗口以及调整窗口大小
提供Web浏览器详细信息的定位对象
提供用户屏幕分辨率详细信息的屏幕对象
对cookie的支持
IE扩展了BOM,加入了ActiveXObject类,可以通过JavaScript实例化ActiveX对象
由于没有相关的BOM标准,每种浏览器都有自己的BOM实现。有一些事实上的标准,如具有一个窗口对象和一个导航对象,不过每种浏览器可以为这些对象或其他对象定义自己的属性和方法。
Window对象
Window对象表示浏览器中打开的窗口
如果文档包含框架(frame或iframe标签),浏览器会为HTML文档创建一个window对象,并为每个框架创建一个额外的window对象
History对象
History对象包含用户(在浏览器窗口中)访问过的URL。
History对象是window对象的一部分,可通过window.history属性对其进行访问。
Location对象
Location对象包含有关当前URL的信息。
Location对象是Window对象的一个部分,可通过window.location属性来访问。
对于Location对象,我们只需要掌握href这个属性就可以,它的作用是设置或返回完整的URL。