2009-09-07 2 views
7

Я не могу выяснить, в чем проблема, и почему я продолжаю получать эту ошибку в Internet Explorer 8, поскольку это единственная ошибка, которую я получаю. Любые мысли о том, что это значит, или простое решение? Я не заметил никаких проблем с моим кодом, но это просто сообщение, которое меня беспокоит.Ошибка анализа HTML

Веб-страница ошибка подробности.

Агент пользователя: Mozilla/4.0 (совместимый; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) Отметка: пн, 7 сентября 2009 19:11:13 UTC

Message: HTML Parsing Error: Unable to modify the parent container element before the child element is closed (KB927917) 
Line: 0 
Char: 0 
Code: 0 
+2

Похоже, вы изменяете DOM элементы, прежде чем они надежно доступны. – meandmycode

+0

Что это значит? – Homework

+0

Покажите нам код. –

ответ

7

ответ есть в ошибке - KB927917 говорит:

Эта проблема возникает из-за того, что дочерний элемент контейнера содержит скрипт , который пытается изменить родительский элемент контейнерный элемент дочернего элемента контейнер. Сценарий пытается изменить родительский контейнерный элемент, используя либо метод innerHTML, либо метод appendChild .

Например, эта проблема может возникнуть, если элемент DIV является дочерним контейнером в элемент ТЕЛА, и блок SCRIPT в элемент DIV пытается изменить элемент в организм, который является родителем контейнером для DIV.

3

Сообщение об ошибке, которое вы получаете, означает «KB927917». Это ссылка на запись в базе знаний Microsoft.

Более конкретно: Why do I receive an "Operation aborted" error message when I visit a Web page in Internet Explorer?

На этой странице есть информация для обоих конечных пользователей и developpers; это может помочь вам понять, что вызывает эту проблему.
Эта часть кажется интересным (цитирую):

Эта проблема возникает потому, что ребенок контейнер HTML элемент содержит скрипт , который пытается изменить элемент контейнера дочернего контейнера родительского . Сценарий пытается изменить родительский контейнерный элемент, используя либо метод innerHTML, либо метод appendChild .

Например, эта проблема может возникнуть, если элемент DIV является дочерним контейнером в элемент ТЕЛА, и блок SCRIPT в элемент DIV пытается изменить элемент в организм, который является родителем контейнером для DIV.


Существует также ссылку на эту запись в блоге: What Happened to Operation Aborted?

На этой записи есть именно сообщение вы получаете (который, кажется, как IE8 имеет дело с этой проблемой - где более старые версии просто отображали какое-то окно предупреждения и пустую страницу); так, может вам тоже ;-)

1

Этот способ прекрасно работает:

setTimeout(function() { 
    "scary DOM manipulations" 
}, 0); 

 Смежные вопросы

  • Нет связанных вопросов^_^