Почему этот javascript производит различный вывод в FF и IE? - PullRequest
0 голосов
/ 16 декабря 2009

Пожалуйста, смотрите это:
http://jsbin.com/igeqa

здесь, я просто использую

alert ( tableObj.childNodes.length );

и в FF вывод равен 5, а в IE - 2. Пожалуйста, скажите мне, что вызывает это поведение?

Ответы [ 2 ]

11 голосов
/ 16 декабря 2009

Firefox считает пробельные текстовые узлы, в то время как IE просто считает элементы. Поэтому Firefox возвращает [#text, THEAD, #text, TBODY, #text], а IE возвращает просто [THEAD, TBODY].

1 голос
/ 16 декабря 2009

IE и Moz подсчитывают дочерние узлы в HTML-документе по-разному. Moz считает каждый пустой пробел (возможные textNodes) как childNode, в то время как IE считает только некоторые из них. Для этого есть несколько решений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...