老师,帮我看一下为什么会报错

老师,帮我看一下为什么会报错

<!DOCTYPE html>

<html>

<head>

    <title></title>

    <script src="JS事件/kuobrowserAddRemove.js" src="JS DOM操作/domReady.js"></script>

    <script type="text/javascript">

       var btn=document.getElementById("btn");

       var handler=function(){

        alert("点击成功");

       }

       EventUtil.addHandler(btn,'click',handler);

       // EventUtil.removeHandler(btn,'click',hand);

    </script>

</head>

<body>

<button id="btn">点击我</button>

</body>

</html>



// 兼容所有浏览器绑定与移除事件

var EventUtil = {

addHandler:function(element,type,handler){

//若为 chrome、 firefox、IE9+   addEvenListener()

//  IE8及以下  attachEvent()

if (element.addEventListener) {

element.addEventListener(type,handler,false)

}else if (element.attachEvent) {

element.attachEvent("on"+type,handler)

}else{

element["on"+type]==null;

}


},

removeHandler:function(element,type,handler){

//若为 chrome、 firefox、IE9+   removeEvenListener()

//  IE8及以下  detachEvent()

if (element.removeEventListener) {

element.removeEventListener(type,handler,false)

}else if (element.detachEvent) {

element.detachEvent("on"+type,handler)

}else{

element["on"+type]==null;

}

}

}


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,可以按照下方操作:

http://img1.sycdn.imooc.com//climg/5e450e27092d349e16760863.jpg

index.js文件里面是同学提供的js代码,也就是如下代码:

http://img1.sycdn.imooc.com//climg/5e450d7d097ae02b12920920.jpg

domReady.js里存放的是老师之前封装的方法,如下:

http://img1.sycdn.imooc.com//climg/5e450dbf09bdc15113680405.jpg

效果:
http://img1.sycdn.imooc.com//climg/5e450ed309933a5912860353.jpg

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

提问者 未来it界的一枚程序媛 2020-02-13 15:17:21


http://img1.sycdn.imooc.com//climg/5e44f7d808f42d4012340465.jpg
老师我想用之前封装的这个函数实现页面的加载,

好帮手慕言 2020-02-13 15:06:40

同学你好,代码是按照从上到下的顺序执行代码,在执行到js时,还没有获取到id为btn的元素,因此是会报错的。建议:把js代码放到body元素里的最下面。示例:

http://img1.sycdn.imooc.com//climg/5e44f88c0901c94508160398.jpg

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师