document.getElementsByTagName('body')[0].className = 'snow-container'; //設置爲新的 document.getElementsByTagName('body')[0].className += 'snow-container'; //在原來的後面加這個 document.getElementsByTagName('body')[0].classList.add("snow-container"); //與第一個等價
若是把javascript放在head裏的話,則先被解析,但這時候body尚未解析,因此$(#btn)會返回空值。若是把javascript放在head裏的話,通常都會綁定一個監聽,當所有的html文檔解析完以後,再執行代碼:
$(document).ready(function(){
//這裏放入執行代碼
})javascript
轉自或參考:原生JS給元素添加class屬性
https://www.cnblogs.com/qlqwjy/p/7283628.htmlcss
有下面這三種簡單語句。html
document.getElementsByTagName('body')[0].className = 'snow-container'; //設置爲新的 document.getElementsByTagName('body')[0].className += 'snow-container'; //在原來的後面加這個 document.getElementsByTagName('body')[0].classList.add("snow-container"); //與第一個等價
測試一:java
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .snow-container { background-color: red; } </style> <script type="text/javascript"> window.onload = function() { document.getElementsByTagName('body')[0].className = 'snow-container'; //設置爲新的 document.getElementsByTagName('body')[0].className += 'snow-container'; //在原來的後面加這個 document.getElementsByTagName('body')[0].classList.add("snow-container"); //與第一個等價 } </script> </head> <body class="test"> </body> </html>
測試二:瀏覽器
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> .snow-container { background-color: red; } </style> </head> <body class="test"> </body> <script type="text/javascript"> document.getElementsByTagName('body')[0].className = 'snow-container'; //設置爲新的 document.getElementsByTagName('body')[0].className += 'snow-container'; //在原來的後面加這個 document.getElementsByTagName('body')[0].classList.add("snow-container"); //與第一個等價 </script> </html>
放在body和head其實差很少的,只不過是文檔解析的時間不一樣。瀏覽器解析html是從上到下的。
若是把javascript放在head裏的話,則先被解析,但這時候body尚未解析,因此$(#btn)會返回空值。若是把javascript放在head裏的話,通常都會綁定一個監聽,當所有的html文檔解析完以後,再執行代碼:測試
$(document).ready(function(){
//這裏放入執行代碼
})
通常狀況下最好是單獨把javascript放在js文件裏,經過head裏的<script src="file.js"></script>連接起來,css則是經過<link>。這樣作的目的是爲了讓內容-樣式-邏輯分離,以便之後可以更好地維護。spa