为了账号安全,请及时绑定邮箱和手机立即绑定

DOM0级事件处理

<!DOCTYPE html>

<html>

<head>


<title>button</title>

</head>

<script>


    var bt = document.getElementById('btn');

    bt.onclick = function(){

      alert('hhh');

    }

</script>

<body>

<div>

<input type="button" value="aaa" id="btn" >

</div>


</body>

</html>

代码跟老师写的一模一样还报这个错误 ,这是为什么 Uncaught TypeError: Cannot set property 'onclick' of null

正在回答

2 回答

你将js写在body前面会导致    btn还没有生成的时候   js就调用了   这时候找不到BTN对象  就报错了   将js放到body后面书写即可


<!DOCTYPE html>

<html>

<head>


<title>button</title>

</head>


<body>

<div>

<input type="button" value="aaa" id="btn" />

</div>


</body>

<script>


    var bt = document.getElementById('btn');

    bt.onclick = function(){

      alert('hhh');

    }

</script>

</html>



1 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//599e32170001c35e04190451.jpg加上window.onload = function(){把你的代码放进去};原因:浏览器加载的时候按照顺序执行,当执行到你的js代码时,找不到你要操作的元素,就会报错,然后影响之后的操作.一般情况下,js都会放在html代码之后执行.

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

举报

0/150
提交
取消

DOM0级事件处理

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信