为什么我的代码浏览器一刷新就会弹出警告框?

来源:2-4 IE事件处理程序及跨浏览器解决

马不理

2016-03-30 20:52

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>handler</title>
    <script type="text/javascript">
        function showWord(){
          alert("hello world!")
        }
        var mybtn=document.getElementsByClassName('btn')[0];
        var eventUtil={
          addHandler:function(element,type,handler){
            if (element.addEventListener) {
              element.addEventListener(type,handler,false);
            } else if (element.attachEvent) {
              element.attachEvent('on'+type,handler);
            } else{
              element['on'+type]=handler;
            }
          }
        }
        eventUtil.addHandler(mybtn,'click',showWord())
  </script>
</head>
<body>
  <input type="button" value="try"  />

</body>
</html>


写回答 关注

2回答

  • qq_沃步福_0
    2016-04-08 21:08:41
    已采纳

    改为  eventUtil.addHandler(mybtn,'click',showWord) 就OK了!

    如果直接写showWord()就是直接调用,而showWord是在事件触发一后系统帮你调用的。所以应该写showWord

    马不理

    非常感谢!

    2016-04-08 22:57:42

    共 1 条回复 >

  • 慕移动6488646
    2016-03-30 21:31:11

    因为你的警告框写在最上面,浏览器还没获取到你的html代码,就开始解析你的js部分了

    马不理

    放在</body>前面也不行啊

    2016-03-30 21:56:21

    共 1 条回复 >

DOM事件探秘

DOM事件?本课程会通过实例来给小伙伴们讲解如何使用这些事件

99545 学习 · 1197 问题

查看课程

相似问题