IE FF childNodes兼容

今天测试childNodes属性的时候,发现IE和FF结果不一样,IE下显示4个节点,而FF下显示9个节点,什么原因呢?原来空格或换行也算一个childNode,暴汗!!!

1 <div id="div1" onClick="alert(count('div1'))">
2  <div>111</div>
3 <div>222</div>
4 <div>333</div>
5 <span>444</span>
6 </div>
7 <script type="text/javascript">
8 function count(x){
9 var a = document.getElementById(x).childNodes,cs=[];
10 for(var i=0;i<a.length;i++)
11 {
12 if(a[i].nodeType==1 && a[i].tagName){ //过滤掉空节点
13 cs[cs.length]=a[i];
14
15 }
16
17 }
18 return cs.length
19 }
原文地址:https://www.cnblogs.com/jsoo/p/1900470.html