BOM常用属性有哪些?
BOM(Browser Object Model)是浏览器对象模型的缩写,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。在前端开发中,BOM的常用属性主要包括以下几个:
-
Window对象属性:
window.innerWidth
和window.innerHeight
:分别用于获取浏览器窗口的内部宽度和高度(不包括菜单栏、工具栏等)。window.outerWidth
和window.outerHeight
:分别用于获取浏览器窗口的外部宽度和高度(包括边框等)。window.name
:用于获取或设置浏览器窗口的名称。window.top
、window.parent
、window.self
:分别用于访问最顶层窗口、父级窗口以及当前窗口。window.history
:用于访问浏览器的历史记录对象,可以实现页面的前进和后退功能。window.location
:用于获取或设置当前窗口的URL地址,并提供了URL的各个组成部分(如协议、主机名、路径等)。window.navigator
:包含了有关浏览器的信息,如浏览器名称、版本等。window.screen
:用于获取用户的屏幕信息,如屏幕的宽度和高度等。
-
Location对象属性:
location.href
:设置或返回当前文档的URL。location.protocol
:返回页面使用的web协议。location.hostname
和location.host
:分别返回当前页面的主机名和主机名加端口号。location.port
:返回web服务器的端口号。location.pathname
:返回当前页面的路径和/或页面名称。location.search
:返回URL的查询部分(?之后的部分)。location.hash
:返回URL的锚部分(#之后的部分)。
-
Navigator对象属性:
navigator.userAgent
:返回用户代理头的字符串表示,通常包含了浏览器的名称、版本等信息。navigator.cookieEnabled
:返回一个布尔值,表示浏览器是否启用了cookie。
-
History对象属性与方法:
history.length
:返回浏览器历史列表中的URL数量。history.go(n)
:加载历史列表中的某个具体页面,通过参数n指定要访问的页面相对当前页面的位置(正数为前进,负数为后退)。history.back()
和history.forward()
:分别用于后退到上一个页面和前进到下一个页面。
-
Screen对象属性:
screen.width
和screen.height
:分别返回屏幕的宽度和高度(以像素为单位)。screen.availWidth
和screen.availHeight
:分别返回屏幕的可用宽度和高度(即除去任务栏等占据的空间后,可用于显示网页内容的区域大小)。
这些属性在前端开发中经常被使用,可以帮助开发者更好地控制和操作浏览器窗口、获取用户设备信息以及实现页面的导航和跳转等功能。