一、概述:
BOM(Browser Object Model)是浏览器对象模型的缩写,指的是由浏览器提供的一组对象和方法,可以通过JavaScript来操作和管理浏览器。
二、BOM组成:
1. Window对象
Window对象代表浏览器中的一个窗口或框架,包含了document、location、history、navigator、screen等子对象,可以通过Window对象来访问和操作这些子对象。
2. Document对象
Document对象是指代当前文档(网页),它是HTML页面的根节点,可以通过Document对象来访问和操作HTML元素及其内容。
3. Location对象
Location对象代表浏览器当前显示文档的URL信息(如协议、主机名、端口号、路径、参数等), 可以通过Location对象来获取或修改当前文档的URL地址。
4. History对象
History对象保存着用户在浏览器中访问过的URL地址,可以通过History对象控制浏览器的后退和前进功能。
5. Navigator对象
Navigator对象描述了浏览器本身的信息,如浏览器名称、版本、语言、插件等。
6. Screen对象
Screen对象表示浏览器显示文档的屏幕信息,如分辨率、颜色深度等。
BOM的主要作用是提供一些基本的API,帮助开发者操作浏览器的窗口、文档等各种属性和功能。通过BOM,开发者可以与浏览器进行交互,实现网页的动态效果、操作文档、控制浏览器行为等。
三、BOM相关对象详细介绍
3.1、window对象
3.1.1Window对象具有以下特点:
-
全局作用域:Window对象是全局对象,它包含了所有的JavaScript变量和函数。因此,可以在脚本的任何地方访问和修改Window对象的属性和方法。
-
对象层次结构:如果窗口中嵌套了框架,则每个框架都是一个Window对象。Window对象形成了一个对象层次结构,可以通过Window的属性和方法来访问和操作其中的文档和元素。
-
客户端JavaScript的基础:客户端JavaScript编程通常基于Window对象,通过Window对象提供的属性和方法来操作浏览器窗口、文档、元素等。
-
可以打开新窗口:Window对象提供了open方法,可以打开一个新窗口并访问任何URL地址。
-
提供了浏览器控制的方法:通过Window对象的属性和方法,可以控制浏览器的行为,例如控制浏览器的前进、后退,刷新浏览器等。
3.1.2方法:
方法 | 描述 |
---|---|
alert() | 显示带有消息和确定按钮的警报框(对话框)。 |
atob() | 解码 base-64 编码的字符串。 |
blur() | 从当前窗口移除焦点。 |
btoa() | 以 base-64 编码字符串。 |
clearInterval() | 清除使用 setInterval() 设置的计时器。 |
clearTimeout() | 清除使用 setTimeout() 设置的计时器。 |
close() | 关闭当前窗口。 |
confirm() | 显示对话框,其中包含消息以及确定和取消按钮。 |
focus() | 将焦点设置到当前窗口。 |
getComputedStyle() | 确定应用到一个文档元素的 CSS 样式。 |
getSelection() | 返回 Selection 对象,表示用户选择的文本范围。 |
matchMedia() | 返回 MediaQueryList 对象,表示指定的 CSS 媒体查询字符串。 |
moveBy() | 相对于其当前位置移动窗口。 |
moveTo() | 将窗口移动到指定位置。 |
open() | 打开新的浏览器窗口。 |
print() | 打印当前窗口的内容。 |
prompt() | 用对话框请求输入一条简单的字符串。 |
requestAnimationFrame() | 请求浏览器在下一次重绘之前调用函数来更新动画。 |