1.什么是 BOM( 浏览器对象模型)
BOM(Browser Object Model)
: 浏览器对象模型,其实就是操作浏览器的一些能力,我们可以操作以下内容:
- 获取一些浏览器的相关信息(窗口的大小)
- 操作浏览器进行页面跳转
- 获取当前浏览器地址栏的信息
- 操作浏览器的滚动条
- 浏览器的信息(浏览器的版本)
- 让浏览器出现一个弹出框(
alert
/ confirm
/ prompt
) - …
BOM
的核心就是 window
对象window
是浏览器内置的一个对象,里面包含着操作浏览器的方法
2.获取浏览器窗口的尺寸
var h = window.innerHeight;
console.log(h);
var w = window.innerWidth;
console.log(w);
3.浏览器的 onload 事件
window.onload = function () {
console.log("页面已经加载完毕");
};
4.浏览器滚动的距离
- 浏览器是没有滚动的,而是我们的页面
- 所以不是在用
window
对象了,而是使用 document
对象
<div style="height: 300px; width: 100px"></div>
<button id="btn"></button>
<script>
window.onscroll = function () {
if (document.documentElement.scrollTop > 200) {
console.log("1111");
} else {
console.log("2222");
}
};
btn.onclik = function () {
window.scrollTo(0, 0);
};
5.浏览器的历史记录
<a href="02.html">到下一页面</a>
<button id="btn1">前进</button>
<script>
btn1.onclick = function () {
history.go(1);
}
<button id="btn2">回退</button>
<script>
btn2.onclick = function () {
history.go(-1);
};
</script>
6.本地存储
<button id="btn1">存储</button>
<button id="btn2">取出</button>
<button id="btn3">删除</button>
<button id="btn4">全部清除</button>
<script>
btn1.onclick = function () {
localStorage.setItem("obj", JSON.stringify({ name: "111", age: 13 }));
};
btn2.onclick = function () {
console.log(localStorage.getItem("obj"));
};
btn3.onclick = function () {
localStorage.removeItem("");
};
btn4.onclick = function () {
localStorage.clear();
};
- 会话存储
sessionStorage
,关闭页面就丢失
<button id="btn1">存储</button>
<button id="btn2">取出</button>
<button id="btn3">删除</button>
<button id="btn4">全部清除</button>
<script>
btn1.onclick = function () {
sessionStorage.setItem("obj", JSON.stringify({ name: "111", age: 13 }));
};
btn2.onclick = function () {
console.log(sessionStorage.getItem("obj"));
};
btn3.onclick = function () {
sessionStorage.removeItem("obj");
};
btn4.onclick = function () {
sessionStorage.clear();
};