深入JavaScriptjavascript

深入JavaScript Day30 - BOM、window、

2022-02-15  本文已影响0人  望穿秋水小作坊

一、从 BOM 的学习,窥探学习方法论

1、BOM里面包括几十个属性,几十个方法,面对如此繁杂的内容,我们该如何去学习呢?【学习方法论,非常重要】

image.png

2、BOM的全称是什么?是什么之间的桥梁?【弄清楚BOM的关系、作用】

-【Browser Object Model】可以看成是连接JavaScript脚本与浏览器窗口的桥梁。

3、BOM主要包括哪四个对象模型?【BOM树形结构】

二、学习window、location、history对象【BOM树形结构的分支】

1、window对象在浏览器中有哪两个身份?

image.png image.png

2、window作为窗口对象,常见的属性演练?

// 浏览器高度
console.log(window.outerHeight);
console.log(window.innerHeight);

console.log("screenX:", window.screenX);
console.log("screenY:", window.screenY);

// 监听滚动
window.addEventListener("scroll", (event) => {
  console.log(window.scrollX);
  console.log(window.scrollY);
});

3、window作为窗口对象,常见的方法演练?

window.onfocus = function () {
  console.log("窗口获取到焦点");
};
window.onblur = function () {
  console.log("窗口失去了焦点");
};

// 整个页面以及所有的资源都加载完成
window.onload = function () {
  console.log("页面加载完成");
};

// hash改变
const hashBtn = document.querySelector("#hash");
hashBtn.onclick = function () {
  location.hash = "aaa";
};
window.onhashchange = function () {
  console.log("hash被修改了");
};

4、为什么window会有 addEventListener等事件方法?代码演练?

function handleWindowClick() {
  console.log("浏览器窗口被点击");
}
function handleWindowScroll() {
  console.log("浏览器窗口在滚动");
}
// window的事件监听
window.addEventListener("click", handleWindowClick);
window.addEventListener("scroll", handleWindowScroll);
// window的事件监听移除
const removeBtn = document.querySelector("#removeBtn");
removeBtn.onclick = function () {
  window.removeEventListener("click", handleWindowClick);
  window.removeEventListener("scroll", handleWindowScroll);
};
image.png

5、location对象的常见方法?

image.png image.png

6、history对象的常见方法?

image.png
上一篇 下一篇

猜你喜欢

热点阅读