取得div下级所有元素
1 childNodes 取得所有子节点(TEXT_NODE+ELEMENT_NODE下面会介绍),
问题:多选出一些对象TEXT_NODE
解决:过滤掉
节点常量对照表
NodeType 节点类型 Named Constant 指定常量
1ELEMENT_NODE
2ATTRIBUTE_NODE
3TEXT_NODE
4CDATA_SECTION_NODE
5ENTITY_REFERENCE_NODE
6ENTITY_NODE
7PROCESSING_INSTRUCTION_NODE
8COMMENT_NODE
9DOCUMENT_NODE
10DOCUMENT_TYPE_NODE
11DOCUMENT_FRAGMENT_NODE
12NOTATION_NODE
2 用层级查找实现
类似: document.getElementById('div2').getElementsByTagName('span');
<div id="div2">
<span class="s">2第一个span</span>
<span class="s">2第二个span</span>
<span class="s">2第三个span</span>
</div>
方法1 例子
//查找孩子节点 function findChildred(domEle){ var children = [] ; var nodes = domEle.childNodes; for(var i=0 ;i<nodes.length ;i++ ){ if(nodes[i].nodeType==1){//如果是元素节点 children.push( nodes[i]); } } return children; }
方法2例子
var spans = document.getElementById('div2').getElementsByTagName('span');