js操作dom元素
常用的 JavaScript 操作 HTML 元素的方法的总结:
1. 选择元素
document.getElementById(id)
: 通过元素的 ID 获取元素。document.getElementsByTagName(name)
: 通过标签名获取一组元素。document.getElementsByClassName(name)
: 通过类名获取一组元素。document.querySelector(selector)
: 返回文档中匹配指定 CSS 选择器的第一个元素。document.querySelectorAll(selector)
: 返回文档中匹配指定 CSS 选择器的所有元素的一个 NodeList。
2. 创建元素
document.createElement(tagName)
: 创建一个新的元素节点。
3. 添加/插入元素
element.appendChild(childElement)
: 将一个元素添加到父元素的子元素列表的末尾。element.insertBefore(newElement, referenceElement)
: 将一个元素插入到另一个元素的前面。element.replaceChild(newElement, oldElement)
: 用新元素替换一个已存在的子元素。
4. 删除元素
element.removeChild(childElement)
: 从 DOM 中删除一个子元素。element.remove()
: 删除元素本身。
5. 修改元素内容
element.innerHTML
: 获取或设置元素内部的 HTML 内容。element.textContent
: 获取或设置元素内部的文本内容。
6. 修改元素属性
element.setAttribute(name, value)
: 设置元素的属性。element.getAttribute(name)
: 获取元素的属性值。element.removeAttribute(name)
: 删除元素的属性。
7. 修改元素样式
element.style.property
: 获取或设置元素的 CSS 属性。element.classList.add(className)
: 向元素添加一个或多个类名。element.classList.remove(className)
: 从元素移除一个或多个类名。element.classList.toggle(className)
: 切换元素的类名。
8. 事件监听
element.addEventListener(event, function, useCapture)
: 在元素上注册一个事件监听器。element.removeEventListener(event, function, useCapture)
: 移除元素上的事件监听器。
9. 获取元素尺寸和位置
element.offsetWidth
: 获取元素的宽度(包括边框和内边距)。element.offsetHeight
: 获取元素的高度(包括边框和内边距)。element.getBoundingClientRect()
: 返回元素的大小及其相对于视口的位置。
10. 遍历元素
- 使用
for
循环或者Array.prototype.forEach
方法遍历 NodeList 或 HTMLCollection。
示例代码
1// 获取元素
2var element = document.getElementById('myElement');
3
4// 创建元素
5var newElement = document.createElement('div');
6
7// 添加元素
8element.appendChild(newElement);
9
10// 修改元素内容
11element.innerHTML = '<p>Hello World!</p>';
12
13// 修改元素样式
14element.style.color = 'red';
15
16// 添加事件监听
17element.addEventListener('click', function() {
18 alert('Element clicked!');
19});
20
21// 获取元素尺寸
22var width = element.offsetWidth;
23var height = element.offsetHeight;
24
25// 遍历元素
26document.querySelectorAll('.items li').forEach(function(item) {
27 console.log(item);
28});