节点类型
- 元素节点
- 属性节点
- 文本节点
网页效果:操作元素节点、属性节点、文本节点,以及修改元素的样式。
document 对象
DOM 通过 document 对象,为开发者提供了大量的接口(API)来操作 DOM 树。
获取节点
document.getElementById();
通过 ID 来获取元素,其返回值是一个 DOM 节点。1
2let aH1 = document.getElementById("title");
console.log(aH1);document.getElementByClassName();
通过类名来获取元素,其返回值是一个 DOM 节点的集合。1
2let btns = document.getElementsByClassName("btn");
console.log(btns);document.querySelector();
获取一个节点。不管能找到多少个,返回值都是一个 DOM 节点。如果是多个元素,它会返回第一个。
“#elementName”1
2
3
4// document.querySelector
let aH1 = document.querySelector("#title");
aH1.innerHTML = "你好世界";
console.log(aH1);document.querySelectorAll();
获取多个节点。”.className”1
2
3
4let btns = document.querySelectorAll(".btn");
for (let i in btns) {
btns[i].innerHTML = "test";
}element.innerHTML
:
DOM 节点的属性。获取和设置元素内所有的内容。1
2
3let aH1_1 = document.getElementById("title");
aH1_1.innerHTML = "你好世界";
console.log(aH1_1);因为获取的是一个 DOM 节点的集合,所以要遍历。i 是索引。
1
2
3
4let btns = document.getElementsByClassName("btn");
for (let i in btns) {
btns[i].innerHTML = "test";
}
事件类型
当…时候,做…事。
click
onclick
点击事件1
2
3
4
5let btn = document.querySelector("button");
// 事件监听函数
btn.onclick = function () {
console.log("hello btn");
};mouseenter
onmouseenter
鼠标移入元素1
2
3
4
5
6
7
8
9let divBox = document.querySelector(".box");
// 鼠标移入元素
divBox.onmouseenter = function () {
console.log("hello red");
};
// 鼠标移出元素
divBox.onmouseleave = function () {
console.log("hello box");
};mouseleave
onmouseleave
鼠标移出元素1
2
3
4
5
6
7
8
9let divBox = document.querySelector(".box");
// 鼠标移入元素
divBox.onmouseenter = function () {
console.log("hello red");
};
// 鼠标移出元素
divBox.onmouseleave = function () {
console.log("hello box");
};
设置样式
element.style.color
element.style.backgroundColor
通过 click、mouseenter、mouseleave 事件控制样式。
例子 - 设置 .box 的样式
1 | let divBox = document.querySelector(".box"); |
例子 - 设置 button 的样式
1 | // |
以上内容编写于 2021 年 9 月 3 日 01 点 30 分。
设置属性
element.src
element.id
例如
img.src="images/1.png"
点击数字列表切换图片
通过 class 属性设置样式
element.className
点击原始、设置激活的背景色
例 1 - 将 h1 元素的类名改成”active”。
HTML 代码
1 | <h1 class="title">hello world</h1> |
JS 代码
1 | let h1 = document.querySelector("h1"); |
例 2 - 点击 h1 时将 h1 的背景色设成红色。
HTML 代码
1 | <h1 class="title">hello world</h1> |
JS 代码
1 | let h1 = document.querySelector("h1"); |
例 3 - 点击 h2 时选中(红色背景色),再点击就取消选中(默认背景色)。
HTML 代码
1 | <h2>hello world</h2> |
JS 代码
1 | let h2List = document.querySelectorAll("h2"); |
示例代码
获取节点
1 |
|
事件类型、设置样式
1 |
|
课后练习
1. 实现一个点击数字列表,切换图片的效果。
1 |
|
2. 实现一个轮播图效果(CSS3)。
先布局再写样式再写脚本
- div.swiper
- div.imgConatainer
- img
- img
- img
- div.numberList
- button
- button
- button
- div.imgConatainer
CSS 代码
1 | .swiper { |
HTML 代码
1 | <div class="swiper"> |
JS 代码
1 | let btnList = document.querySelectorAll(".numberList button"); |
以上内容编写于 2021 年 9 月 5 日 00 点 41 分。