[JavaScript基础] BOM
浏览器对象模型 Browser Object Model
Window
Javascript
层级中的顶层对象,表示浏览器窗口
属性:
history
location
navigator
screen
详情见下
innerWidth
返回窗口的文档显示区的宽度
innerHeight
返回窗口的文档显示区的高度
就是X Y滚动条的位置
pageXOffset
设置或返回当前页面相对于窗口显示区左上角的 X 位置
pageYOffset
设置或返回当前页面相对于窗口显示区左上角的 Y 位置
声明了浏览器窗口距离屏幕左上角的距离X,Y
scrollTop
(IE、Safari、Chrome、Opera)
scrollLeft
scrollX
(Chrome、Firefox、Safari)
scrollY
方法:
alert()
显示带有一段消息和一个确认按钮的警告框
clearInterval()
取消由 setInterval() 设置的计时器
clearSetTimeout()
取消由 setTimeout() 设置的计时器
close()
关闭浏览器窗口
comfirm()
显示带有一段消息以及确认按钮和取消按钮的对话框
moveBy()
可相对窗口的当前坐标把它移动指定的像素
moveTo()
把窗口的左上角移动到一个指定的坐标
open()
//第一个参数是地址,第二个参数是name,第三个是新窗口页面大小,并弹出浏览器到外,不写则在浏览器内打开。
window.open("https://www.google.com.hk","name","width=200,height = 200;")
prompt()
显示可提示用户输入的对话框,并返回输入内容
let abcd = window.prompt("123")
console.log(abcd) //接受输入框输入的内容
resizeBy()
按照指定的像素调整窗口的大小
resizeTo()
把窗口的大小调整到指定的宽度和高度
scrollBy(x, y)
按照指定的像素值来滚动内容 两个参数,x y
scrollTo(x, y)
把内容滚动到指定的坐标 两个参数,x y
setInterval()
按照指定的周期(以毫秒计)来调用函数或计算表达式
let timer1 = setInterval(function(){
console.log("每两秒执行一次")
},2000)
timer1;
setTimeout()
在指定的毫秒数后调用函数或计算表达式
let timer = setTimeout(function(){
console.log("五秒后执行")
},5000)
timer;
Navigator
包含客户端浏览器信息
appCodeName
返回浏览器的代码名 Mozilla
appMinorVersion
返回浏览器的次级版本 (IE4 oprea)
appName
返回浏览器名称
appVersion
返回浏览器的平台和版本信息
browserLanguage
返回当前浏览器的语言(IE4 oprea)
cookieEnabled
返回指明浏览器中是否启用cookie的布尔值
cpuClass
返回浏览器系统的CPU等级 (IE)
onLine
返回指明系统是否处于脱机状态
platform
返回运行浏览器的操作系统平台
systemLanguage
返回当前操作系统的默认语言(IE)
userAgent
返回由客户机发送服务器的user-agent头部的值
userLanguage
返回操作系统设定的自然语言(IE4 oprea)
plugins
返回包含客户端安装所有插件的数组
History
包含了浏览器窗口访问过的URL
属性:
history.length
返回浏览器历史列表中的URL的数量
方法:
history.back()
加载 history
列表中的前一个URL
history.forward()
加载 history
列表中的后一个URL
history.go()
加载 history
列表中的某个具体页面
history.back(-1);
history.forward(1);
history.go(3);
Location
包含了当前URL的信息
属性:
以简书网站为例,修改了网站URL信息https://www.jianshu.com/?&123#1
location.hash
设置或返回从#号开始的URL
location.host
设置或返回主机名和当前URL的端口号
location.hostname
设置或返回当前 URL 的主机名
location.href
设置或返回完成的URL
location.pathname
设置或返回当前 URL 的路径部分。
location.port
设置或返回当前 URL 的端口号。
location.protocol
设置或返回当前 URL 的协议
location.search
设置或返回从问号 (?) 开始的 URL(查询部分)
方法:
location.assign()
加载新文档
location.assign("https://www.google.com.hk")
location.reload()
重新加载当前文档,相当于刷新。参数可选,不填或者填false
则取浏览器缓存的文档
location.reload(true) // 重服务器重新抓取
location.reload(false) // 从缓存中拉取
location.replace()
用新的文档替换当前文档,无历史记录
location.replace("https://www.google.com.hk")
Screen
包含了客户端显示屏的信息
availWidth
可用的屏幕宽度
availHeight
可用的屏幕高度
以上两个属性,以像素计,减去界面特性,比如窗口任务栏。
width
返回屏幕宽度
height
返回屏幕高度
let w = screen.availWidth;
let h = screen.availHeight;