Node.TEXT_NODE и IE7

У меня есть javascript, который тестирует типы DOM node против такого типа:

        if(node.nodeType == Node.TEXT_NODE) {

Конечно, все работает отлично в Firefox, Safari и Opera. Но Internet Explorer 7 жалуется, что Node (с капиталом N) - undefined. Но эта часть DOM Level 2!

Нужно ли мне менять код для использования магических чисел? Или я пропустил здесь что-то простое?

Ответ 1

К сожалению, вы ничего не пропустили.

В IE нет константы Node. Посмотрите здесь http://www.ibm.com/developerworks/xml/library/x-matters41.html в разделе "Что еще вы можете сделать с DOM?".

Итак, либо вы определяете свою собственную константу Node, либо просто запрашиваете

node.nodeType === 3