一.BOM
- 什么是BOM:浏览器对象模型
- 作用:
- 可以操作浏览器窗口及浏览器窗口中的控件(标签),既可以在JavaScript程序中操作标签
- 实现页面和用户之间的动态交互
3.浏览器对象:一系列浏览器内置对象的统称
4.浏览器对象模型:内置对象之间按照某种层次组织起来的结构
二.BOM对象
1.Widow对象:浏览器的窗口对象,是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.变量名“访问某个未声明的变量时,该变量就是undefinde
3.常用方法:
(1)alert(‘字符串‘):弹出消息提示框(只有一个按钮)
(2)promot(参数1,参数2):带输入的消息框
参数1:表示提示的字符串
参数2:表示输入框的默认值
当用户点击‘确认’按钮时,函数返回用户输入的数据;点击‘取消’按钮时,返回null
(3)confirm(参数):确认消息框
参数:表示提示的字符串
(4)open(url,name,spaces,replace):打开一个窗口,表示将url代表的页面在name窗口打开
url:页面地址
name:表示窗口对象
_black:在新窗口打开页面
_self:在当前窗口打开页面
_parent:表示在父框架打开页
spaces表示窗口特征(大小,是否状态栏,是否有工具栏)
replace:默认值为true,表示是否替换默认条目
四.定时器函数
1.setTimeout(fn,times):间隔times毫秒后执行fn函数
参数fn:是一个函数
Times:间隔的时间,单位是毫秒
函数的返回值是一个定时器对象
2.清除setTimeout创建的定时器
ClearTimeout(定时器对象)
3.Setinterval(fn,times):每间隔times毫秒后执行fn函数
4.Clearinterva(定时器对象)清除Setinterval创建的定时器
五.事件处理
1.事件:用户在页面中进行的某种操作
(1)单击事件名:click -----------onclick
(2)页面加载事件名:load----------onload
2.事件处理程序:某个事件发生时执行的程序
3.document对象获取页面元素(标签)的方法
(1)getElementByld(标签的id属性值):浏览器都支持
(2)querySelector()
a.通过id选择:document. querySelector(’#id’)
b.通过class选择:document. querySelector(’.class’)
c.通过标签名选择:document. querySelector(’标签名‘)
4.事件监听:
(1)直接在标签中监听:
<button onclick = “show()”>开始</button>
<body οnclick=show()”></body>
(2).在JavaScript程序中调用addEventListener函数来注册监听
标签对象. addEventListener(’事件名’,fn)
参数fn:表示事件处理程序,是一个函数
六.标签的属性
1.innerHTML属性:代表标签的html内容(代表起始标签和结束标签之间的内容
2.input标签的value属性
事件的注册方式:
- 写在页面的标签中:<button onclick = “函数名()”></button>
- 使用addEventListener(‘事件名’,事件处理函数)
- 使用函数表达式:
函数表达式:let / var 变量名 = function(参数){ }
注册事件的方式:对象名.onclick = function(参数){ }
Javascript控制复选框
- 复选框组:将所有复选框的name属性定义成一样的
- 复选框的事件:change 当复选框的状态发生改变时触发
七.Window对象的其他函数
1.open函数:打开一个窗口
Open(url,name,specs,replace)
url:统一资源定位符(网址),格式:协议://主机名:端口号/文件路径
http:超文本传输控制协议,是一个无状态协议,直接运行在TCP协议上
https:SSL,是安全的超文本传输控制协议,运行在SSL之上,SSL在TCP之上
name属性:窗口名称
2.moveTo(x,y):将窗口移动到指定位置
3.resizeTo(w,h):改变窗口大小
八.Window对象的属性
1、innerHeight / innerWidth:返回窗口的文档显示区的高度和宽度
2、outerHeight / outerWidth:返回窗口外部的高度和宽度(包括工具条和滚动条)
九.Location对象:是浏览器的地址栏
1、url:统一资源定位符
IP:网际协议。
IP地址:是计算机在互联网上的唯一标识
IP地址的编址方式:
IPV4:点分十进制
192.168.1.125
IPV6:冒号十六进制
00 :: A1 :: B6 :: CF
2、location的方法:
(1)assign(url):载入新的文档
(2)reload(true/false):重新载入当前文档
(3)replace(url):用新的文档替换当前文档
3、location的属性:
href:表示url地址
C/S结构:Client/Server —- 客户端/服务器结构
B/S结构:Browser/Server —- 浏览器/服务器结构
十.History对象:历史记录,可以对浏览器访问过的URL历史记录进行操作
1、出于安全方面的考虑,history对象不能直接获取用户浏览过的URL,但可以控制浏览器实现“后退”和“前进”的功能。
2、属性:length —— 历史列表中的网址数
3、方法:
(1)go( 整数 ):加载历史列表中某个具体页面。正数表示前进,负数表示后退
(2)back():表示后退,加载是历史列表中前一个网址
(3)forward():表示前进,加载历史列表中下一个网址
十一.navigator对象,是浏览器的嗅探器,保存的是浏览器的详细信息
1、appCodeName:浏览器的内部名称 —- 浏览器的内核
2、appName:浏览器的名称
3、platform:运行浏览器的操作平台
4、userAgent:客户端发送给服务器的User-Agent值