-1

document.write()呼び出し内にタグを配置しようとすると問題が発生します。document.write()がすでに別のタグ内にあるため、これが発生していると思います。

オンラインのどこかでdocument.innerHTML()呼び出しもあるのを見ました。これが私を助けるかどうか誰かが知っていますか、そうでない場合は、これを行う別の方法がありますか?

ありがとう :)

4

1 に答える 1

2

document.writeページの解析中にマークアップを発行するために使用できます。解析後のページの変更には使用できません。の出力はdocument.write、あたかも最初に HTML ドキュメントにあったかのようにパーサーに直接渡されます。たとえば、次のようになります。

<body>
<script>
document.write("<p>");
</script>
hi there</p>

ブラウザにはまったく同じように見えます

<body>
<p>hi there</p>

innerHTMLは関数ではなくプロパティであり、すべての DOM 要素インスタンスに存在し、マークアップを使用してコンテンツを設定するために使用できます。これは、インスタンスで使用できるさまざまな DOM メソッドとともに、動的 Web ページを実行するための主要な方法です。例えば:

<body>
<p id="target">Hi there</p>
<script>
document.getElementById("target").innerHTML = "Updated by <strong>code</strong>";
</script>
</body>

...段落を「こんにちは」から「コードで更新」に変更します。

さらに探索する:

于 2012-07-27T13:22:50.953 に答える