2010-07-13 2 views
2

Мы используем функцию getElementsByTagName для поиска domnodes, присутствующих в этой статье.getElementsByTagName дает нам тот же результат для IE и Firefox

Мы обнаружили, что IE и Firefox дают разные результаты для сломанного тега, как показано ниже.

например. <a href="http://www.yahoo.com">Bypass HTML tags</ a> &nbsp; Complete 2 Fails

В IE: для примера выше мы получим два узла «A» и «/».

В firefox для примера выше мы получим один узел «A».

Оба браузера должны иметь одинаковые элементы Dom.

Заранее спасибо

+0

вы можете дать код? – Roki

+0

Почему браузеры должны давать одинаковые результаты, когда они пытаются восстановить поврежденный код? – Quentin

ответ

3

</ a> не является действительным (X) HTML. Вы хотите </a>

+0

+1 Это правильно, когда вы закрываете тег, подобный этому в IE, он рассматривает его как тег '' например. ''. Смешно, я знаю. –

+0

На самом деле, IE получил это право ... вот как это следует интерпретировать в HTML, так же как и в '
' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' в регулярном xml (а не xhtml) '
', но для совместимости с html вам нужно пространство, поэтому старые браузеры будут рассматривать косую черту как атрибут. –