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

帮忙看下代码哪里出问题,工具提示是 handler没有赋值,不是用showMes函数赋值了吗?

帮忙看下代码哪里出问题,工具提示是 handler没有赋值,不是用showMes函数赋值了吗?

慕粉3968675 2016-09-14 00:23:58
<body><div id="box"><input type="button" value="按钮" id="btn" onclick="showMes()" ><input type="button" value="按钮2" id="btn2" ><input type="button" value="按钮3" id="btn3" ></div><script>  function showMes(){ alert('hello'); } var btn2=document.getElementById('btn2'); var btn3=document.getElementById('btn3'); btn2.onclick=function(){ alert('这是一个DOM0级添加事件'); } btn2.onclick=null; //DOM二级事件/* btn3.addEventListener('click',showMes,false); btn3.addEventListener('click',function(){   alert(this.value);},false); //删除事件 btn3.removeEventListener('click',showMes,false);     btn3.attachEvent('onclick',showMes); btn3.detachEvent('onclick',showMes);*/ //跨浏览器事件 var eventUtil={ //添加句柄 addHandler:function(element,type,handler){ if(element.addEventListener){ element.addEventListener(type,hanlder,false);} else if(element.attachEvent){ element.attachEvent("on"+type,handler); } else{ element['on'+type]=handler } }, //删除句柄          removeHandler:function(element,type,handler){ if(element.removeEventListener){ element.removeEventListener(type,hanlder,false);} else if(element.detchEvent){ element.detchEvent('on'+type,handler); } else{ element['on'+type]=null;  } } } eventUtil.addHandler(btn3,'click',showMes);      </script></body></html>
查看完整描述

2 回答

已采纳
?
stone310

TA贡献361条经验 获得超191个赞

有2个地方打错字了:

1、handler打错成hanlder

//添加句柄

addHandler:function(element,type,handler){

if(element.addEventListener){

element.addEventListener(type,hanlder,false);}

2、detachEvent打错成detchEvent,这里也有个handler

//删除句柄

          removeHandler:function(element,type,handler){

if(element.removeEventListener){

element.removeEventListener(type,hanlder,false);}

else if(element.detchEvent){

element.detchEvent('on'+type,handler);


查看完整回答
1 反对 回复 2016-09-14
?
慕粉3968675

TA贡献1条经验 获得超0个赞

终于解决了,谢谢

查看完整回答
反对 回复 2016-09-14
  • 2 回答
  • 0 关注
  • 1361 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信