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

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

DOM 0級問題 為什么按鈕不響應,提示錯誤是btn2是空



var btn2=document.getElementById("btn2");//取出按鈕2

btn2.onclick=function(){ //function ()是匿名函數

window.alert("這是DOM 0級調用的事件");

}

<input type="button" id="btn2" value="按鈕2" />


正在回答

3 回答

如果你的id沒有寫錯的話,很可能是在執行getElementById的時候 btn2還沒有創建出來,你可以像下面這樣寫。

window.onload?=?function()?{
???//...?寫上你的代碼?
}


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

一墨飛雪 提問者

非常感謝!
2016-04-24 回復 有任何疑惑可以回復我~
#2

一墨飛雪 提問者

為什么這樣寫就可以?多謝多謝
2016-04-24 回復 有任何疑惑可以回復我~
#3

Wei丶Haijun 回復 一墨飛雪 提問者

HTML是從上之下順序解析的,你在<head></head>里面導入的js肯定要比<body></body>里面的內容先解析,所以在執行js代碼的時候會獲取不到btn2;如果寫在window.onload里面,會等到整個文檔流加載完畢之后才會執行。
2016-04-24 回復 有任何疑惑可以回復我~
#4

一墨飛雪 提問者 回復 Wei丶Haijun

懂了,多謝
2016-04-24 回復 有任何疑惑可以回復我~
查看1條回復

<input type="button" value="登陸" id="btn2" >

<script type="text/javascript">

? ? ? ?var btn2=document.getElementById("btn2");

? ? ? ? ?function bt1(){

? ? ? window.open('http://www.baidu.com','_blank','width=300 height=200','tooler=no');

? ? ? ?}

?btn2.onclick="bt1()";

</script>

這個完全沒有反應哈,怎么回事

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

慕函數9642432

<input type="button" value="登陸" id="btn2" > <script type="text/javascript"> var btn=document.getElementById("btn2"); btn.onclick=function(){ window.open('http://www.baidu.com','_blank','width=300 height=200'); }; </script>
2016-07-31 回復 有任何疑惑可以回復我~

深入理解HTML文檔的解析順序即可!?

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

舉報

0/150
提交
取消

DOM 0級問題 為什么按鈕不響應,提示錯誤是btn2是空

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

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

幫助反饋 APP下載

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

公眾號

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