BOM
一、BOM
1、什么是BOM?
Browser Object Model: 浏览器对象模型
2、作用:
(1)可以操作浏览器窗口及浏览器窗口中的控件(标签):即可以在JavaScript程序中操作标签
(2)实现页面和用户之间的动态交互
3、浏览器对象:一系列浏览器内置对象的统称
4、 浏览器对象模型:内置对象之间按照某种层次组织起来的结构
二、BOM对象
1、window对象:浏览器窗口对象,是BOM的核心,BOM的其他内置对象可以作为window的属性
2、document对象:文档对象,是DOM的核心
3、location对象:地址对象。浏览器的地址栏
4、history对象:历史对象。浏览器的访问记录,可以实现前进和后退。
5、navigator对象:浏览器对象,又称为浏览器的嗅探器。通过它可以得到浏览器的版本信息、名称、内核等信息
6、screen对象:屏幕对象。用于获取和屏幕有关的数据。例如屏幕分辨率
三、window对象:可以作为BOM其他对象的父对象
1、全局作用域:在javascript中定义的变量、函数及JavaScript的内置函数都可以被window对象调用
2、注意的问题:
(1)window对象的属性和方法的访问:window.属性名 / window.方法名() —- window可以省略
(2)在全局作用域中使用的this代表window对象
(3)若使用“window.变量名”访问某个未声明的变量时,该变量就是undefined
3、常用方法:
(1)alert(‘字符串’):弹出消息提示框(只有一个按钮)
(2)prompt(参数1,参数2):带输入的消息框
参数1:表示提示的字符串
参数2:表示输入框的默认值
当用户点击’确定’按钮时,函数返回用户输入的数据;当用户点击’取消’按钮时,不返回值
(3)confirm(参数):确认消息框
参数:表示提示字符串
当用户点击“确定”按钮时,返回true,点击“取消”按钮时,返回false
(4)open(url,name,spaces,replace):打开一个窗口。表示将url代表的页面在name窗口中打开
url:页面地址
name:表示窗口对象
_blank:在新窗口中打开页面
_self:在当前窗口中打开页面
_parent:表示在父框架中打开页面
spaces:表示窗口特征(大小、是否状态栏、是否有工具栏)
replace:默认值为true,表示是否替换默认条目
内联框架:ifrme
四、定时器函数
1、setTimeout(fn,times):间隔times毫秒后执行fn函数
参数fn:是一个函数
参数times:间隔的时间,单位是毫秒
函数的返回值是一个定时器对象
2、清除setTimeout创建的定时器
clearTimeout(定时器对象)
3、setInterval(fn,times):每间隔times毫秒后执行fn函数
4、clearInterval(定时器对象):清除setInterval创建的定时器
五、事件处理
1、事件:用户在页面中进行的某种操作
(1)单击事件名:click —- onclick
(2)页面加载事件名:load —- onload
2、事件处理程序:某个事件发生时执行的程序
3、document对象获取页面元素(标签)的方法:
(1)getElementById(标签的Id属性值):浏览器都支
(2)querySelector()
a、通过id选择:document.querySelector(‘#id’)
b、通过class选择:document.querySelector(‘.class’)
c、通过标签名选择:document.querySelector(‘标签名’)
4、事件监听:
(1)直接在标签中监听:
<button οnclick="show()">开始</button> //监听click事件<body οnlοad=""> //监听页面的加载事件load
(2)在JavaScript程序中调用addEventListener函数来注册
控件名.addEventListener(‘事件名’,fn)
参数fn:是一个函数,表示事件处理程序
六、标签的属性:
1、innerHTML属性:代表标签的html内容(代表起始标签和结束标签之间的内容)
//获取div标签
let mydiv = document.querySelector('#app');
//将值str通过innerHTML输入到mydiv(获取到div标签)中
mydiv.innerHTML = str;