JS在HTML頁面的加載機制

瀏覽器在獲得一個html之後,會“自上而下”加載,並且在加載過程中進行解析渲染。

如果含有JavaScript代碼,HTML頁面的執行過程也不會變。在調用js代碼時,就需要考慮代碼執行順序的問題,如下面例子:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			var p = document.querySelector(".p");
			console.log(p);
		</script>
	</head>
	<body>
		<p class="p">這是一段文字</p>
	</body>
</html>

這段代碼用到了一個document.querySelector()方法,該方法會返回文檔中與指定選擇器或選擇器組匹配的第一個 html元素Element。 如果找不到匹配項,則返回null

代碼的目的是獲取p元素,但執行結果是null。說明沒有找到class爲p的元素。

改進代碼後,如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<p class="p">這是一段文字</p>
		<script type="text/javascript">
			var p = document.querySelector(".p");
			console.log(p);
		</script>
	</body>
</html>

把js代碼放到<body>內,則得到我們要的結果,執行結果如下:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章