访问并更新DOM树的两个步骤
-
定位到与需要操作的元素的对应节点。
-
使用它的文本、子元素或属性。
1. 访问元素
-
选择单个元素节点
-
选择多个元素
-
在元素节点之间遍历
getElementById()
var el = document.getElementById('one');
el.className = 'cool';
querySelector()
- 使用CSS选择器语法,改语法会找到一个或多个元素,但该方法只返回第一个匹配的元素。
var el = document.querySelector('li.hot');
el.className = 'cool';
getElementByClassName()
- 根据指定的class属性值选择一个或多个元素。这个方法比 querySelectorAll() 方法速度更快。
var elements = document.getElementsByClassName('hot');
elements.className = 'cool';
getElementByTagName()
- 选择页面上所有指定标签名称的元素。这个方法比 querySelectorAll() 方法速度更快
var elements = document.getElementsByTagName('li')
elements.className = 'cool';
querySelectorAll()
- 使用CSS选择器语法选择一个或多个元素,该方法或返回所有匹配的元素。
var els = document.querySelectorAll('li.hot');
els.className = 'cool';
parentNode()
var startItem = document.getElementById('two');
var parent = startItem.parentNode;
previousSibing / nextSibing
var startItem = document.getElementById('two');
var prevItem = startItem.previousSibling;
var nextItem = startItem.nextSibling;
prevItem.className = 'complete';
nextItem.className = 'cool';
firstChild / lastChild
var startItem = document.getElementsByTagName('ul')[0];
var firstItem = startItem.firstChild;
var lastItem = startItem.lastChild;
firstItem.className = 'complete';
lastItem.className = 'cool';