【前端】JavaScript(JS)的BOM对象(JS的Browser对象)----什么是BOM对象?

简介: JavaScript(JS)的BOM对象(JS的Browser对象)----什么是BOM对象:Browser Object Model 浏览器对象模型:将浏览器的各个组成部分封装成对象。

一、概念

Browser Object Model 浏览器对象模型:将浏览器的各个组成部分封装成对象。感觉不懂的可以看下图所示:

2.png

二、组成

   * Window:窗口对象

   * Navigator:浏览器对象(不常用)

   * Screen:显示器屏幕对象(不常用)

   * History:历史记录对象

   * Location:地址栏对象

三、Window:窗口对象

   1. 创建

   2. 方法

        1. 与弹出框有关的方法:

           alert()    显示带有一段消息和一个确认按钮的警告框。

           confirm()    显示带有一段消息以及确认按钮和取消按钮的对话框。

               * 如果用户点击确定按钮,则方法返回true

               * 如果用户点击取消按钮,则方法返回false

           prompt()    显示可提示用户输入的对话框。

               * 返回值:获取用户输入的值

        2. 与打开关闭有关的方法:

           close()    关闭浏览器窗口。

               * 谁调用我 ,我关谁

           open()    打开一个新的浏览器窗口

               * 返回新的Window对象

        3. 与定时器有关的方式

           setTimeout()    在指定的毫秒数后调用函数或计算表达式。

               * 参数:

                   1. js代码或者方法对象

                   2. 毫秒值

               * 返回值:唯一标识,用于取消定时器

           clearTimeout()    取消由 setTimeout() 方法设置的 timeout。

           setInterval()    按照指定的周期(以毫秒计)来调用函数或计算表达式。

           clearInterval()    取消由 setInterval() 设置的 timeout。

               * 返回值:唯一标识,用于取消定时器

   3. 属性:

       1. 获取其他BOM对象:

           history

           location

           Navigator

           Screen:

       2. 获取DOM对象

           document

   4. 特点

       * Window对象不需要创建可以直接使用 window使用。 window.方法名();

       * window引用可以省略。  方法名();

Window 对象方法

方法 描述
alert() 显示带有一段消息和一个确认按钮的警告框。
blur() 把键盘焦点从顶层窗口移开。
clearInterval() 取消由 setInterval() 设置的 timeout。指定某个返回值,就可以取消指定的定时任务。
clearTimeout() 取消由 setTimeout() 方法设置的 timeout。指定某个返回值,就可以取消指定的定时任务。
close() 关闭浏览器窗口。
confirm() 显示带有一段消息以及确认按钮和取消按钮的对话框。
createPopup() 创建一个 pop-up 窗口。
focus() 把键盘焦点给予一个窗口。
moveBy() 可相对窗口的当前坐标把它移动指定的像素。
moveTo() 把窗口的左上角移动到一个指定的坐标。
open() 打开一个新的浏览器窗口或查找一个已命名的窗口。
print() 打印当前窗口的内容。
prompt() 显示可提示用户输入的对话框。
resizeBy() 按照指定的像素调整窗口的大小。
resizeTo() 把窗口的大小调整到指定的宽度和高度。
scrollBy() 按照指定的像素值来滚动内容。
scrollTo() 把内容滚动到指定的坐标。
setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式。返回值:唯一标识,用于取消定时器。
setTimeout() 在指定的毫秒数后调用函数或计算表达式。返回值:唯一标识,用于取消定时器。

四、Location:地址栏对象

   1. 创建(获取):

       1. window.location

       2. location

   2. 方法:

       * reload()    重新加载当前文档。刷新

   3. 属性

       * href    设置或返回完整的 URL。

Location 对象属性

属性 描述
hash 设置或返回从井号 (#) 开始的 URL(锚)。
host 设置或返回主机名和当前 URL 的端口号。
hostname 设置或返回当前 URL 的主机名。
href 设置或返回完整的 URL。
pathname 设置或返回当前 URL 的路径部分。
port 设置或返回当前 URL 的端口号。
protocol 设置或返回当前 URL 的协议。
search 设置或返回从问号 (?) 开始的 URL(查询部分)。

Location 对象方法

属性 描述
assign() 加载新的文档。
reload() 重新加载当前文档。刷新页面。
replace() 用新的文档替换当前文档。

五、History:历史记录对象

   1. 创建(获取):

       1. window.history

       2. history

   2. 方法:

       * back()    加载 history 列表中的前一个 URL。

       * forward()    加载 history 列表中的下一个 URL。

       * go(参数)    加载 history 列表中的某个具体页面。

           * 参数:

               * 正数:前进几个历史记录

               * 负数:后退几个历史记录

   3. 属性:

       * length    返回当前窗口历史列表中的 URL 数量。

    注意:history对象只代表当前窗口(即Window对象)的历史记录,并不是浏览器的所有历史记录,这个一定要分清。可查看上图中的2窗口对象。

History 对象属性

属性 描述
length 返回当前Window窗口的历史列表中的 URL 数量。

History 对象方法

方法 描述
back() 加载 history 列表中的前一个 URL。
forward() 加载 history 列表中的下一个 URL。
go() 加载 history 列表中的某个具体页面。有参数的,正数:前进几个历史记录;负数:后退几个历史记录。相当于集成了back()和forwrd()方法。


具体相关属性可以查看W3CSchool官方文档


**本文首发于CSDN,为博主原创文章,如果需要转载,请注明出处,谢谢!**


完结!

目录
打赏
0
0
0
0
17
分享
相关文章
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
102 72
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
|
1月前
|
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
42 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
springboot解决js前端跨域问题,javascript跨域问题解决
本文介绍了如何在Spring Boot项目中编写Filter过滤器以处理跨域问题,并通过一个示例展示了使用JavaScript进行跨域请求的方法。首先,在Spring Boot应用中添加一个实现了`Filter`接口的类,设置响应头允许所有来源的跨域请求。接着,通过一个简单的HTML页面和jQuery发送AJAX请求到指定URL,验证跨域请求是否成功。文中还提供了请求成功的响应数据样例及请求效果截图。
springboot解决js前端跨域问题,javascript跨域问题解决
前端中对象的深度应用与最佳实践
前端对象应用涉及在网页开发中使用JavaScript等技术创建和操作对象,以实现动态交互效果。通过定义属性和方法,对象可以封装数据和功能,提升代码的组织性和复用性,是现代Web开发的核心技术之一。
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
103 5
JavaScript前端路由的实现原理及其在单页应用中的重要性,涵盖前端路由概念、基本原理、常见实现方式
本文深入解析了JavaScript前端路由的实现原理及其在单页应用中的重要性,涵盖前端路由概念、基本原理、常见实现方式(Hash路由和History路由)、优点及挑战,并通过实际案例分析,帮助开发者更好地理解和应用这一关键技术,提升用户体验。
148 1
JavaScript与PHP中正则
有个在线调试正则的工具,点击查看工具。下面的所有示例代码,都可以在codepen上查看到。
JavaScript与PHP中正则
JavaScript中的原型 保姆级文章一文搞懂
本文详细解析了JavaScript中的原型概念,从构造函数、原型对象、`__proto__`属性、`constructor`属性到原型链,层层递进地解释了JavaScript如何通过原型实现继承机制。适合初学者深入理解JS面向对象编程的核心原理。
56 1
JavaScript中的原型 保姆级文章一文搞懂
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
147 2

热门文章

最新文章