1.BOM与DOM介绍
JavaScript语言由三部分组成
ECMAJavaScript:定义了js的语法规范
Dom:document object model文档对象模型:一个HTML文档中所有的一切都是dom对象
* Dom定义了一套操作HTML文档的API(节点的增删改查)
Bom:Browser object model浏览器对象模型 例如:一个浏览器的窗口就是一个window对象
* Bom定义了一套操作浏览器窗口的API
Bom主要由五大对象组成:
window:浏览器核心对象
location:包含当前页面的URL信息
history:history对象主要用于记录你当前窗口的历史记录
navigator:包含当前浏览器的信息,例如用的什么浏览器,操作系统版本等
screen:获取用户电脑的屏幕分辨率
2.window对象
1.window对象:指的是当前浏览器窗口,它是JS中的顶级对象
(1).所有的全局变量(var声明的)都是window对象的属性:最顶级的对象
document对象
bom对象
全局的方法:alert(),setInterval()...........
(2).只要是window的属性和方法,在使用的时候都可以省略window
例如:window.alert() 可以省略window写成alert()
例如:window.document 可以省略window写成document
(3).window对象有一个特殊属性叫做name
它永远都是一个字符串,无论给他赋什么值
2.window对象有两个常用的方法:open()与close()
open():打开一个窗口
close():关闭一个窗口
3.window对象三个事件
window对象有三个事件,记录了浏览器窗口从打开到关闭的三个过程
1.window.onload:界面上所有的内容加载完毕之后才触发这个事件
2.window.onbeforeunload:界面在关闭之前会触发这个事件
3.window.onunload:界面在关闭的那一瞬间会触发这个事件
点击某个离开页面的链接
在地址栏中键入了新的 URL
使用前进或后退按钮
关闭浏览器窗口
重新加载页面
4.location对象
1.location对象:包含当前页面的URL信息
url:统一资源定位符
url = 协议名(http) + ip地址(域名) + 端口号 + 资源路径
2.location对象有三个常用的方法
(1)打开新网页:location.assign('你要打开的新网页的url')
(2)替换当前网页:location.replace('要替换的网页url')
(3) 刷新当前网页: location.reload()
5.history对象
history对象主要用于记录当前窗口的历史记录
主要作用就是前进和后退网页(相当于浏览器的左上角前进后退按钮功能)
history.forward():前进
history.back():后退
6.navigator对象
navigator对象:包含当前浏览器的信息
应用场景:用户信息统计(统计我这个网站平台的用户群体分布,什么浏览器,windows什么版本等)
<script> /*navigator对象:包含当前浏览器的信息 工作中应用场景:用户信息统计(统计我这个网站平台的用户群体分布,什么浏览器,windows什么版本等) */ console.log ( navigator );//navigator对象 console.log ( navigator.appVersion ); // 当前浏览器版本信息 console.log ( navigator.platform ); // 当前浏览器的硬件平台 console.log ( navigator.userAgent ); // 当前浏览器信息 // 使用场景1:判断当前用户的操作系统是32位还是64位 // 谷歌和IE 64位显示WOW64 火狐显示Win64 if(navigator.userAgent.indexOf('WOW64') != -1 || navigator.userAgent.indexOf('Win64') != -1){ console.log ( "64位" ); }else{ console.log ( "32位" ); } // 使用场景2:判断用户当前使用哪种浏览器 if(navigator.userAgent.indexOf('Chrome') != -1){ console.log ( "谷歌浏览器" ); }else if(navigator.userAgent.indexOf('Firefox') != -1){ console.log ( "火狐浏览器" ); }else{ console.log ( "IE浏览器" ); // 也有可能是其他小众浏览器,可以忽略不计 } </script> </html>