2012-01-17 60 views
1

正好在<body>標籤的起始位置下方,我想包含一個腳本,其中包括將一個類添加到<body>標籤中。我是否需要等待DOM準備才能向<body>添加類?

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

我知道,如果我想要做重DOM操作,如添加的孩子到文件,我應該使用DOM就緒功能,保證文檔樹已滿載。但是,在DOM樹加載之前訪問和操作document.body是否安全?

+0

我從來沒有遇到任何類似的問題。 – Pointy

回答

2

這是完全安全的。一旦標籤被打開,元素已經被創建。

也就是說,你可能不應該這樣做。
方式你不把你所有的Javascript代碼放在body結束標記之前嗎?

+0

在一般的腳本走在身體的盡頭,是的。不過,我打算明天將SOPA停電,而不是混淆核心代碼庫,我將使用該站點的公告功能快速插入一些HTML。所以劇本實際上會在靠近身體頂部的地方結束,我通常會在上面放置一段公告段落。我知道這不是一個很好的練習,但這次緩解似乎大大超過了其他問題:) – Matchu

+1

感謝您讓我放心,只要沒有人指出問題,我會接受這個答案只要該網站允許:) – Matchu

+0

@Matchu - 對你支持SOPA的反對意見! [檢查出來](https://github.com/chrisguitarguy/WP-SOPA-Blackout#readme)。 –

相關問題