7

何が問題なのか、なぜ Internet Explorer 8 でこのエラーが発生し続けるのかがわかりません。これが私が受け取っている唯一のエラーです。それが何を意味するのか、または簡単な解決策について何か考えはありますか? 私は自分のコードに問題があることに気付いていませんが、私を悩ませているのはメッセージだけです。

Web ページのエラーの詳細。

ユーザー エージェント: 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) タイムスタンプ: 2009 年 9 月 7 日月曜日 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
4

3 に答える 3

7

答えはエラーにあります-KB927917は言います:

この問題は、子コンテナのHTML要素に、子コンテナの親コンテナ要素を変更しようとするスクリプトが含まれているために発生します。スクリプトは、innerHTMLメソッドまたはappendChildメソッドのいずれかを使用して、親コンテナ要素を変更しようとします。

たとえば、この問題は、DIV要素がBODY要素の子コンテナであり、DIV要素のSCRIPTブロックがDIV要素の親コンテナであるBODY要素を変更しようとした場合に発生する可能性があります。

于 2009-09-07T19:26:26.607 に答える
3

表示されるエラーメッセージは「KB927917」を示しています。これは、Microsoftのナレッジベースのエントリへの参照です。

具体的には、Internet ExplorerでWebページにアクセスしたときに「操作が中止されました」というエラーメッセージが表示されるのはなぜですか?

そのページには、エンドユーザーと開発者の両方に関する情報があります。これらは、この問題の原因を理解するのに役立つ場合があります。
この部分は面白そうです(引用):

この問題は、子コンテナのHTML要素に、子コンテナの親コンテナ要素を変更しようとするスクリプトが含まれているために発生します。スクリプトは、innerHTMLメソッドまたはappendChildメソッドのいずれかを使用して、親コンテナ要素を変更しようとします。

たとえば、この問題は、DIV要素がBODY要素の子コンテナであり、DIV要素のSCRIPTブロックがDIV要素の親コンテナであるBODY要素を変更しようとした場合に発生する可能性があります。


このブログエントリへのリンクもあります:中止された操作に何が起こったのですか?

そのエントリには、まさにあなたが受け取っているメッセージがあります(これは、IE8がその問題を処理する方法のようです-古いバージョンは、ある種のアラートボックスと空白のページを表示していました) ; だから、あなたもそうかもしれません;-)

于 2009-09-07T19:27:38.230 に答える
1

この回避策はうまくいきます:

setTimeout( function() {
    "scary DOM manipulations"
}, 0 );
于 2010-09-02T07:43:36.510 に答える