亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

求解各位大神,把js的位置像css那樣放,為什么不可以?

<!doctype?html>
<html>
<head>
	<meta?http-equiv="content-type"?content="text/html;?charset=utf-8">
	<title>初識css</title>
	<script?type="text/javascript">
	document.write("hello");
	document.getElementById("p1").style.color="blue";
	</script>
	
</head>
<body>
<p?id="p1">我是第一段文字</p>
<p?id="p2">我是第二段文字</p>
</body>
</html>
為什么P1不顯示為藍色?而css這樣的格式就可以呢

正在回答

3 回答

因為瀏覽器是從上到下渲染頁面的,body還沒加載,所以你的腳本找不到body的內容

0 回復 有任何疑惑可以回復我~
#1

Maxmengt

那為什么css就可以那樣呢?求解。
2016-03-29 回復 有任何疑惑可以回復我~
#2

迷途的馬爾斯 回復 Maxmengt

這個你要理解瀏覽器的渲染原理了,瀏覽器構建DOM的時候會把CSS的樣式表現出來,所以說CSS文件會被調用,但script腳本不同,你在DOM構建的時候就插入腳本,你的腳本找不到body這個結點,所以就無法通過JS變色
2016-03-30 回復 有任何疑惑可以回復我~
#3

Maxmengt 回復 迷途的馬爾斯

有點理解了。謝謝你!
2016-03-30 回復 有任何疑惑可以回復我~

謝謝各位,后面的章節是這么解釋的:javascript作為一種腳本語言可以放在html頁面中任何位置,但是瀏覽器解釋html時是按先后順序的,所以前面的script就先被執行。比如進行頁面顯示初始化的js必須放在head里面,因為初始化都要求提前進行(如給頁面body設置css等);而如果是通過事件調用執行的function那么對位置沒什么要求的

0 回復 有任何疑惑可以回復我~
#1

Maxmengt

感覺這個跟你提的問題沒什么關系呀...
2016-03-29 回復 有任何疑惑可以回復我~

HTML可以理解為面向過程的

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

求解各位大神,把js的位置像css那樣放,為什么不可以?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號