Pergunta

Não consigo descobrir qual é o problema e por que continuo recebendo esse erro no Internet Explorer 8, pois é o único erro que estou recebendo. Alguma opinião sobre o que isso significa ou uma solução simples? Eu não notei nenhum problema com o meu código, é apenas a mensagem que me incomoda.

Detalhes do erro da página da web.

Agente do usuário: Mozilla/4.0 (compatível; 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) Timestamp: Mon, 7 de setembro de 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
Foi útil?

Solução

A resposta está lá no erro - KB927917 diz:

Esse problema ocorre porque um elemento HTML de contêiner filho contém script que tenta modificar o elemento de contêiner pai do recipiente filho. O script tenta modificar o elemento de contêiner pai usando o método InnerHTML ou o método AppendChild.

Por exemplo, esse problema pode ocorrer se um elemento div for um recipiente infantil em um elemento corporal, e um bloco de script no elemento div tentar modificar o elemento corporal que é um contêiner pai para o elemento div.

Outras dicas

A mensagem de erro que você está recebendo indica "KB927917". Esta é uma referência a uma entrada na base de conhecimento da Microsoft.

Mais especificamente : Por que recebo uma mensagem de erro "Operação abortada" quando visito uma página da web no Internet Explorer?

Nessa página, existem informações para usuários finais e desenvolvedores; Isso pode ajudá -lo a entender o que está causando esse problema.
Esta parte parece interessante (citando):

Esse problema ocorre porque um elemento HTML de contêiner filho contém script que tenta modificar o elemento de contêiner pai do recipiente filho. O script tenta modificar o elemento de contêiner pai usando o método InnerHTML ou o método AppendChild.

Por exemplo, esse problema pode ocorrer se um elemento div for um recipiente infantil em um elemento corporal, e um bloco de script no elemento div tentar modificar o elemento corporal que é um contêiner pai para o elemento div.


Há também um link para esta entrada no blog: O que aconteceu com a operação abortada?

Nessa entrada, há exatamente a mensagem que você está recebendo (O que parece ser a maneira como o IE8 lida com esse problema - onde as versões mais antigas estavam apenas exibindo algum tipo de caixa de alerta e uma página em branco) ; Então, você também pode ;-)

Esta solução alternativa funciona bem:

setTimeout( function() {
    "scary DOM manipulations"
}, 0 );
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top