childNodes上有奇怪的东西,绊倒了我

时间:2011-09-25 00:31:28

标签: javascript html

<tr id='tt_info_entry_2'>
  <th colspan=3>Read sigma[0]</th> 
  <th colspan=3>Read sigma[1]</th> 
</tr>

但是在Chrome中我得到了:

screencap

注意神秘的“文本”对象妨碍了我的for循环。其中有三个也是。 (只有两个<th>

这是什么?

P.S。我将在getElementsByTagName('th')上使用<tr>来获得一个干净的数组。但是,当我用div s做各种各样的忍者时,我还没有弹出这些奇怪的文字内容。我可以解释一下吗?

2 个答案:

答案 0 :(得分:4)

空格也是textNodes。 在第1个TH之前,第1个TH之后和第2个TH之后(换行符)有空格。

使用Element.children代替 Element.childNodes 来仅检索元素节点。

答案 1 :(得分:1)

对于表格行和单元格,您应该使用:

他们拥有广泛的浏览器支持,并消除了文本节点问题。

这些可让您将浏览器兼容性恢复为Firefox 3,并避免使用IE8以及.children更低的一些怪癖。

enter image description here