所以,如果我有HTML代码:为什么我得到一个[文本对象]而不是预期的TR对象与JavaScript中的previousSibling?
<HTML>
<HEAD>
<TITLE>This is a test</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>First Cell</TD>
</TR>
<TR>
<TD>Second Cell</TD>
<TD><A href="#" onclick="alert(this.parentNode.parentNode.previousSibling.childNodes[0].innerHTML); return false;">Click Here</A></TD>
</TR>
</TABLE>
</BODY>
</HTML>
这适用于IE浏览器,而不是Firefox和可能更多的浏览器在那里。显然,Firefox将TR(缩进)之间的空白解释为上面代码中'this'的父TR的前一个兄弟。所以不是获得所需的TR对象,而是给我一个[文本对象]。
所以我现在的问题是,为什么Firefox不像Internet Explorer那样忽略TR之间的空白。我知道我可以使用previousElementSibling来规避这一点,但我想知道为什么Firefox会这样做,并且如果有逻辑解释或用法。我试图在互联网上查找它,但无济于事。所以如果有人能告诉我或给我一个链接,我可以找到这些信息,我将不胜感激!
'HMTL'?这是新的:) – alex 2011-04-29 11:18:31
哎呀,我会改变它:P – lugte098 2011-04-29 11:19:22