js中的BOM

152 阅读2分钟

什么是BOM

BOM:浏览器对象模型

(操作浏览器的一些能力)

可以操作的一些内容

获取浏览器的相关信息(窗口大小)

操作浏览器进行页面跳转

获取浏览器地址栏的信息

操作浏览器滚动条

获取浏览器版本

让浏览器出现一个弹窗 ....

BOM的核心是window对象

window 时 JS 内置的一个对象, 里面包含着操作浏览器的方法

获取浏览器窗口的尺寸

innerHeight/innerWidth

获取浏览器的高度/宽度(包括滚动条)

语法:window.innerHeight/.innerWidth

console.log('高度',window.innerHeight)
console.log('宽度',window.innerWidth)

浏览器的弹出层(学习时会用,实际工作中不会使用)

alert('内容')

prompt('弹窗提示信息')

confirm:有一个询问信息和两个按钮

点击确定返回true

点击取消返回false

1. 浏览器的地址信息

在 window 中, 有一个 对象 叫做 location, 他是专门用来存储浏览器地址栏内的信息

1.1 location 这个对象中, 有一个属性叫做 href

这个属性是专门存储浏览器地址栏内的 url 地址的信息

我们也可以给这个属性赋值, 这样就会跳转到我们赋值的地址了

1.2 location 这个对象中, 有一个方法叫做 reload

这个方法调用时会重新加载页面, 相当于 刷新

注意!!! 不要直接写在代码中, 否则浏览器会一直刷新

console.log(window.location)
//1.1 location
setTimeout(function () {
window.location.href = 'https://www.baidu.com/'
}, 3000)

        // 1.2 reload
var count = 0
setInterval(function () {
count++
console.log(count)
if (count === 5) {
window.location.reload()    // 不能直接写在 代码中
}
}, 1000)

2. 浏览器的历史记录

window 对象中 有一个 叫做 history 他专门用来存储历史记录信息

2.1 history.back

专门用来回退历史记录, 就是回到前一个页面, 相当于浏览器左上角的 ← 按钮

注意: 我们需要有上一条记录, 否则不能使用这个方法

语法: window.history.back()

2.2 history.forward

是去到下一个历史记录里面, 也就是去到下一个页面, 相当于浏览器左上角的 → 按钮

注意: 我们需要之前有过回退操作, 不然无法使用这个方法

语法: window.history.forward()

console.log(window.history)