10

これは非常に基本的な質問です。私はこのスクリプトを持っています:

    <script type="text/javascript">
        function write(){
            document.write('Hello2')
        }
        write();
    </script>

それは私の完全なページを示しています。そして、ページの最後にHello2が表示されます。しかし、開発者ツールにアクセスしてwrite()を呼び出すと、本体の html 全体が置き換えられます。知りたいだけです。

        window.onload=write;// has the same effect. Clear's my page.

ありがとう。

4

3 に答える 3

18

ドキュメントがブラウザによって読み取られ、解析されているときに、scriptを呼び出す要素がある場合document.write、 の出力がdocument.writeその時点でドキュメントに挿入されます。ただし、後でページが完全に読み込まれると、 を使用するdocument.writeと、暗黙的に が実行document.openされ、ページが消去され、新しいページが最初から作成されます。

MDN の詳細:

document.write一般に、 を使用してページにコンテンツを追加するのではなく、さまざまなDOM メソッドを使用します (直接、またはjQueryYUIClosureなどのライブラリを介して)。

于 2012-12-06T10:30:21.413 に答える
7

ページの読み込みが完了した後に実行されると、コンテンツ全体が上書きされます。これは、次の質問への回答で提起されたポイントの 1 つです。

于 2012-12-06T10:30:24.877 に答える