【前端】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,为博主原创文章,如果需要转载,请注明出处,谢谢!**


完结!

相关文章
|
8天前
|
JavaScript 前端开发 API
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
该文章详细讲解了队列数据结构在前端开发中的应用,并深入探讨了JavaScript的事件循环机制,区分了宏任务和微任务的执行顺序及其对前端性能的影响。
|
7天前
|
JavaScript 前端开发 小程序
一小时入门Vue.js前端开发
本文是作者关于Vue.js前端开发的快速入门教程,包括结果展示、参考链接、注意事项以及常见问题的解决方法。文章提供了Vue.js的基础使用介绍,如何安装和使用cnpm,以及如何解决命令行中遇到的一些常见问题。
一小时入门Vue.js前端开发
|
9天前
|
JavaScript 前端开发 开发者
深入浅出 Vue.js:构建响应式前端应用
Vue.js 是一个流行的前端框架,以其简洁、高效和易学著称。它采用响应式和组件化设计,简化了交互式用户界面的构建。本文详细介绍 Vue.js 的核心概念、基本用法及如何构建响应式前端应用,包括实例、模板、响应式数据和组件等关键要素,并介绍了项目结构、Vue CLI、路由管理和状态管理等内容,帮助开发者高效地开发现代化前端应用。
|
9天前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
78 2
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
68 4
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
60 4
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
78 4
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
78 3
|
3月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
66 3
下一篇
无影云桌面