查找HTML文档内容一共可分为四种:
1. 不需要查找,可直接获得的元素:html head body
2. 按节点关系查找:其中分为节点树和元素树两种。
按节点查找的前提是已经获得了一个节点,而且会返回空字符,对文本有干扰;
按元素查找返回的内容更纯净。
3. 按HTML查找:范围可大可小,可设置条件。包括按id查找、按标签名查找、按name属性查找和按class属性查找。
4. 按选择器查找:此种方式最为直观。
比较下后两种查找方式的优缺点以及各自的特点:
1 首次查找:如果条件简单,就按HTML查找,效率更高;如果条件复杂,就按选择器查找,一步到位。
2 按HTML和按选择器查找,两者都会返回多个元素的集合,不同的是,前者返回的是动态集合,后者返回的是非动态集合。
动态集合不会存储对象的属性值,每次访问都要重新查找DOM树;
非动态集合会存储对象的所有属性值,即使反复访问集合,也不会导致反复查找DOM树。
因此如果只是单次查找,可按HTML,效率更高,但如果多次查找访问,就要选择按选择器查找。