getElementById取不到對象
在瀏覽器進行文件解析時是有順序的,當頁面載入完畢之前,或是說在對應的DOM物件載入完畢之前,對應的物件是不能取得的。
看下面程式碼:
<script>
var temp = document.getElementById("div");
alert(temp);
</script>
<body>
<div id="div">
<input name="username" id="username" type="text">
<button id="btn">按鈕</button>
</div>
</body>在這段程式碼中, document.getElementById(“div”)是取得不到物件的,且alert(temp)將會彈出null;
這是因為當瀏覽器解析到script標籤中的程式碼時,body中的DOM元素還沒有載入完畢,自然取不到任何東西。
解決方法:將script中的程式碼移到body元素之後,
<body>
<div id="div">
<input name="username" id="username" type="text">
<button id="btn">按鈕</button>
</div>
<script>
var temp = document.getElementById("div");
alert(temp);
</script>
</body>或加上window.onload
<script>
window.onload = function(){
var temp = document.getElementById("div");
alert(temp);
}
</script>總結
以上所述是小編給大家介紹的解決document.getElementBy系列方法取得不到物件的問題,希望對大家有幫助,也非常感謝大家對downcodes.com網站的支持!