定位/获取节点
获取DOM节点
1、通过document.getElement方法
document.getElementById("id"); //通过id获取可以直接定位唯一的一个DOM节点
document.getElementsByClassName("aBC"); //通过类名获取,可能返回一组
document.getElementsByClassName(某个节点,"b"); //从某个节点开始,通过类名获取,可能返回一组
let allElements = document.getElementsByTagName("*");// 所有元素
let images = document.getElementsByTagName("img"); //通过标签名获取,返回数组
// 返回包含零个或多个元素的 NodeList。
// 在 HTML 文档中,这个方法返回一个HTMLCollection 对象。
// 考虑到二者都是“实时”列表,HTMLCollection 与 NodeList 是很相似的
alert(images.length); // 图片数量
alert(images[0].src); // 第一张图片的 src 属性
alert(images.item(0).src); // 同上
// <img src="myimage.gif" name="myImage">
let myImage = images.namedItem("myImage");// 根据名字获取引用
let myImage = images["myImage"];
2、通过节点关系
xxx.children;// 获取节点test下的所有直属子节点
test.childNodes;// 获取节点test下的所有子节点,包括空格、换行符
xxx.children[0];//第一个个子节点
test.firstElementChild;// 获取节点test下第一个子节点:
test.lastElementChild;// 获取节点test下最后一个子节点:
test.parentNode;//父节点
3、通过CSS选择器
var js = document.getElementById('test-p');
// 通过querySelectorAll获取class名为c-red节点内的符合条件的所有<P>节点:Html5
var arr = document.getElementsByClassName('c-red')[1].getElementsByTagName('p');
var js = document.querySelector('#test-p');
var arr = document.querySelectorAll('.c-red.c-green>p');
4、通过HTML对象选择器
var p = document.forms["frm1"]; //id为frm1的表单forms
var p = document.forms.frm1;
document.anchors 包含文档中所有带 name 属性的元素。
document.forms 包含文档中所有