zoukankan      html  css  js  c++  java
  • addEventListener和attachEvent区别

    addEventListener()是标准的绑定事件监听函数的方法,是W3C所支持的,Chrome、FireFox、Opera、Safari、IE9.0及其以上版本都支持该函数;但是,IE8.0及其以下版本不支持该方法,它使用attachEvent()来绑定事件监听函数。所以,这种绑定事件的方法必须要处理浏览器兼容问题。

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title></title>
     6     <style type="text/css">
     7 
     8     </style>
     9 </head>
    10 <body>
    11 <button id="myBtn">点击</button>
    12 <p id="demo"></p>
    13 <script type="text/javascript">
    14     var E = {
    15         /***
    16          * 在主流浏览器中
    17          * element.addEventListener(type, fn, false);
    18          * @param element 文档节点 document window XMLHttpRequest
    19          * @param type 字符串,事件名称,不含"on~", 比如"click", "mousemove", "keydown"
    20          * @param useCapture 是否使用捕捉,一般用 false.
    21          * 在低版本的IE浏览器中
    22          * element.attachEvent("onclick", fn);
    23          *  @param type 字符串,事件名称,含"on~",比如"onclick", "onmousemove", "onkeydown"
    24          *  @param fn 实现了EventListener接口或者是JavaScript中的函数
    25          */
    26         add: function (element, type, fn) {
    27             if(element.addEventListener){
    28                 element.addEventListener(type, fn, false);//第三个参数默认值为false,所以如果不写其值默认为false
    29             }else if(window.attachEvent){
    30                 element.attachEvent("onclick", fn);
    31             }
    32         }
    33     };
    34     var element = document.getElementById("myBtn");
    35     function showText(){
    36         document.getElementById("demo").innerHTML = "你点击了这个按钮!";
    37     }
    38     E.add(element, 'click', showText);
    39 </script>
    40 </body>
    41 </html>
  • 相关阅读:
    2014.12.31今年最后的一天
    leetcode11 盛最多水的容器(Medium)
    leetcode23 合并k个排序链表(Hard)
    leetcode148 排序链表(Medium)
    leetcode48 旋转图像(Medium)
    leetcode227基本计算器II (Medium)
    leetcode338 比特位计数(Medium)
    leetcode32 最长有效括号(Hard)
    leetcode面试题10.01 合并排序的数组(Easy)
    leetcode55 跳跃游戏(Medium)
  • 原文地址:https://www.cnblogs.com/liubeimeng/p/5941957.html
Copyright © 2011-2022 走看看