IE の インターネット サイト XXX は開けられません。 回避策
回避策
例 1
この例での DIV 要素は、子コンテナ要素です。 DIV 要素の内の SCRIPT ブロックは、 本文要素を変更しようとします。 本文要素は、 DIV 要素の閉じられなかった親コンテナです。
<html>
<body>
<div>
<script type="text/Javascript">
document.body.innerHTML+="sample text";
</script>
</div>
</body>
</html>
この問題を解決するために、以下のいずれかの方法を使用します。
方法 1:親要素を変更します。
本文要素のスコープへ SCRIPT ブロックを移動します。 スクリプトが変更しようとするコンテナです。
<html>
<body>
<div>
</div>
<script type="text/Javascript">
document.body.innerHTML+="sample text";
</script>
</body>
</html>
方法 2: クローズド コンテナ要素を修正します。
親コンテナ要素のプレースホルダとしてクローズド コンテナを追加します。 スクリプト ブロックとの新しいクローズド コンテナを次に変更します。
<html>
<body>
<div id="targetContainer">
</div>
<div>
<script type="text/Javascript">
document.getElementById('targetContainer').innerHTML+="sample text";
</script>
</div>
</body>
</html>
例 2
この例で、 appendChild メソッドを使用すると、入れ子に深くなった TD コンテナ要素の内、ある SCRIPT ブロックは、親コンテナ 本文要素を変更しようとします。
<html>
<body>
<table>
<tr>
<td>
<script type="text/Javascript">
var d = document.createElement('div');
document.body.appendChild(d);
</script>
</td>
</tr>
</table>
</body>
</html>
この問題を解決するために、 本文要素に SCRIPT ブロックを移動します。
<html>
<body>
<table>
<tr>
<td>
</td>
</tr>
</table>
<script type="text/Javascript">
var d = document.createElement('div');
document.body.appendChild(d);
</script>
</body>
</html>
状況
詳細
たとえば、この問題が DIV 要素が 本文要素の子コンテナで、そして DIV 要素の SCRIPT ブロックが DIV 要素の親コンテナである 本文要素を変更しようとすると、発生することがあります。 これが Internet Explorer のパーサーのバグです。
http://support.microsoft.com/default.aspx/kb/927917
If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.

Comments
No comments yet.
Leave a comment