window
BOM是browser object model的缩写,简称浏览器对象模型
BOM提供了独立于内容而与浏览器窗口进行交互的对象
由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window
BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C
BOM最初是Netscape浏览器标准的一部分
documents
documents是BOM中最重要对象之一
documents对象是window对象的属性
由于document代表HTML文档的内容,因此可以通过它表示文档中加载的一些元素,这些元素全部通过集合访问。
名字 | 作用 |
---|---|
anchors | 文档中所有锚(a name="aname")的集合 |
applets | 文档中所有applet标签表示的内容集合 |
embeds | 文档中所有embed标签表示的内容的集合 |
forms | 文档中所有form标签表示的内容的集合(input、button....) |
images | 文档中所有image标签表示的内容的集合 |
links | 文档中所有a(链接)标签表示的内容的集合 |
frame
frames,中文"框架"frames对象是window对象的属性
如果页面使用框架,将产生一个框架集合frames,在集合中可用数字从0开始,从左到右,逐行索引)或名字索引框架
history
浏览者通常可以使用浏览器的前进与后退按钮访问曾经浏览过的页面。
JavaScript的history对象记录了用户曾经浏览过的页面,并可以实现浏览器前进与后退相似的导航功能
方法名 | 作用 |
---|---|
history.go(int ) | 前进或后退指定的页面数 |
history.back() | 后退一页 |
history.forward() | 前进一页 |
属性:length history对象中缓存了多少个URL
location
navigator
navigator中最重要的是userAgent属性,返回包含浏览器版本等信息的字符串,其次cookieEnabled也很重要,使用它可以判断用户浏览器是否开启cookie。
navigator对象通常用于检测浏览器与操作系统的版本,由于navigator没有统一的标准,因此各个浏览器都有自己不同的navigator版本
属性名 | 作用 |
---|---|
appCodeName | 浏览器代码名的字符串表示 |
appName | 官方浏览器名的字符串表示 |
appVersion | 浏览器版本信息的字符串表示 |
cookieEnabled | 是否启用cookie |
javaEnabled | 是否启用java |
platform | 浏览器所在计算机平台的字符串表示 |
plugins | 安装在浏览器中的插件数组 |
taintEnabled | 如果启用了数据污点返回true,否则返回false |
userAgent | 用户代理头的字符串表示 |
screen
screen对象用于获取用户的屏幕信息
属性名 | 作用 |
---|---|
availHeight | 窗口可以使用的屏幕高度,单位像素 |
availWidth | 窗口可以使用的屏幕宽度,单位像素 |
colorDepth | 用户浏览器表示的颜色位数,通常为32位(每像素的位数) |
pixelDepth | 用户浏览器表示的颜色位数,通常为32位(每像素的位数)(IE不支持此属性) |
height | 屏幕的高度,单位像素 |
width | 屏幕的宽度,单位像素 |