2012-01-17 8 views
1

<body>タグのすぐ下に、とりわけ<body>タグにクラスを追加するスクリプトを含めたいと思います。<body>にクラスを追加するDOM準備が整うのを待つ必要がありますか?

<body> 
    <script type="text/javascript"> 
    if(conditionIsMet) { 
     document.body.className += ' condition-is-met'; 
    } 
    </script> 
    <!-- 
    ... 
    ... 
    ... 
    --> 
</body> 

私は、ドキュメントに子を追加するように重いDOM操作を行いたい場合は、私はドキュメントツリーが完全に読み込まれることを保証するために、DOMレディ機能を使用する必要があり、ことを知っています。 DOMツリーがロードされる前にdocument.bodyにアクセスして操作するのは安全ですか?

+0

私はそれに何か問題は一度もありませんでした。 – Pointy

答えて

2

これは完全に安全です。タグを開くと、その要素は既に作成されています。

つまり、おそらくこのようにしてはいけません。
閉じるタグbodyの前にすべてのJavascriptコードを挿入しないでください。

+0

一般的に、スクリプトは身体の最後に行きます。しかし、私は明日SOPAのブラックアウトをハックする予定です。コアのコードベースを混乱させるのではなく、サイトのアナウンスメント機能を使用して、少しのHTMLをすばやく挿入します。だから、スクリプトは実際には、私は通常、発表の段落を置くだろう体の上部近くのどこかで終わるでしょう。私はそれが偉大な練習ではないことを知っていますが、容易さは、今周りの他の懸念を大幅に上回っているようです:) – Matchu

+1

誰もが問題を指摘するのを止めない限り、私はこの答えを受け入れるでしょうサイトが許可するとすぐに:) – Matchu

+0

@Matchu - SOPAの反対を支援するためにあなたのために良い! [これをチェック](https://github.com/chrisguitarguy/WP-SOPA-Blackout#readme)。 –

関連する問題