![BOM(浏览器对象模型)+操作BOM](https://img2022.cnblogs.com/blog/2776012/202204/2776012-20220401114132521-349859470.png)
BOM 获取浏览器窗口尺寸 浏览器的三种弹出层 浏览器地址栏 浏览器的历史记录 浏览器版本信息 浏览器常见事件 获取浏览器卷去尺寸 小案例
BOM
概念:BOM:browser object module--浏览器对象模型是一套操作浏览器窗口的 属性 和 方法
BOM的核心是window
所有BOM属性都是 window.xxx(window可以省略)
获取浏览器窗口尺寸
1,window.innerWidth--获取浏览器窗口宽度(包含滚动条)
2,window.innerHigth--获取浏览器窗口高度(包含滚动条)
浏览器的三种弹出层
1,alert()--提示框
包含:提示文本 + 确定按钮
返回值是undefined
2,confirm()--选择提示框
包含:提示文本 + 确定按钮 + 取消按钮
返回值是boolean类型--点击确定返回true,点击取消返回false
3,prompt()--提示输入框
包含:提示文本 + 输入框 +确定按钮 + 取消按钮
返回值:点击确定返回输入文本内容,点击取消返回null
浏览器地址栏
window对象中有location地址成员,location也是对象数据类型
location的href属性
读属性:window.location.href--获取当前地址栏的完整地址url(汉字会转换为编码格式)
写属性:window.location.href = "url"--把当前地址栏的地址修改,其实是页面跳转
location 的 reload()方法
window.loaction.reload()--重新加载当前页面,其实就是刷新(注意不要写在打开页面的位置)
浏览器的历史记录
window对象的成员history也是对象数据类型
history的back()方法
window.history.back()
回退到上一条历史记录,相当于浏览器的左箭头<-
history 的 forward()方法
window.history.forward()
前进到下一条历史记录,相当于点击右按钮 ->
history 的 go() 方法
window.history.go( 数字 )
正整数表示历史记录前进
负整数表示历史记录后退
0 表示当前页面刷新
浏览器版本信息
window对象的成员navigator是对象数据类型
navigator的方法
1,userAgant()
window.navigator.userAgent()
获取浏览器 型号 和 版本 信息
2,appVersion()
window.navigator.appVersion()
获得浏览器版本信息
3,appName()
window.navigator.appName()
获取浏览器的名字
navigator的属性
platform
window.navigator.platform
获取浏览器的安装环境,操作系统(如:win32,win64)
浏览器常见事件
1,load
window.onload=function(){}
事件在加载完毕之后执行
2,scroll
window.onscroll=function(){}
事件在滚动条滚动时执行
3,resize
window.onscroll=function(){}
事件在浏览器窗口尺寸改变的时候执行
获取浏览器卷去尺寸
浏览器卷去高度
1,document.documentElement.scrollTop
有DOCUTYPE标签时获取浏览器卷去高度
2,document.body.scrllTop
没有DOCTYPE标签时获取浏览器卷去高度
3,兼容写法
var scrollTop=document.documentElement.scrollTop || document.body.scrollTop
浏览器卷去宽度
1,document.documentElement.scrollLeft
有DOCUTYPE标签时获取浏览器卷去高度
2,document.body.scrollLeft
没有DOCTYPE标签时获取浏览器卷去高度
3,兼容写法
var scrollTop=document.documentElement.scrollLeft || document.body.scrollLeft
小案例
顶部通栏 返回顶部
1,绑定鼠标滚动事件
2,获取浏览器卷去高度
3,判断浏览器卷去高度