ホームページ  >  記事  >  ウェブフロントエンド  >  「非同期で読み込まれた外部スクリプトからドキュメントに書き込むことはできません」エラーを解決するにはどうすればよいですか?

「非同期で読み込まれた外部スクリプトからドキュメントに書き込むことはできません」エラーを解決するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-20 14:07:021031ブラウズ

How to Resolve

エラー: 「非同期で読み込まれた外部スクリプトからドキュメントに書き込むことはできません」

問題:

の非同期読み込みdocument.write() を使用してドキュメントを変更しようとすると、スクリプトによって問題が発生する可能性があります。ページ読み込みの実行後、スクリプトは非同期的にダウンロードされますが、「明示的に開かれない限り、非同期的に読み込まれた外部スクリプトからドキュメントに書き込むことはできません。」というコンソール メッセージが表示されて失敗します。

説明:

非同期的に読み込まれたスクリプトは、ドキュメントが解析されて閉じられた後に実行されます。その結果、これらのスクリプト内から document.write() などの操作が使用できなくなります。

解決策:

この問題を解決するには、document.write() 呼び出しを明示的な DOM 操作に置き換えます。これには、DOM 要素を作成し、appendChild()、insertBefore()、または innerHTML を設定して親要素に挿入することが含まれます。

例:

オリジナル スクリプト (インライン、ドキュメント付き。 write()):

<code class="html"><div id="container">
<script>
document.write('<span style="color:red;">Hello</span>');
</script>
</div></code>

変更されたスクリプト (DOM 操作により非同期でロード):

<code class="javascript">var container = document.getElementById("container");
var content = document.createElement("span");
content.style.color = "red";
content.innerHTML = "Hello";
container.appendChild(content);</code>

以上が「非同期で読み込まれた外部スクリプトからドキュメントに書き込むことはできません」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。