16-添加事件的三种方式

<button id="btn">我是按钮</button>
<script>
    var oBtn = document.getElementById("btn");
</script>
  • 方式一: 通过onxxx的方式来添加
    • 注意点: 由于是给属性赋值, 所以后赋值的会覆盖先赋值的
      oBtn.onclick = function () {
          alert("666");  // 这个不会弹出
      }; 
      oBtn.onclick = function () {
          alert("777");  // 只会弹出这个
      };
    
  • 方式二: 通过addEventListener方法添加
    • 注意点:
      1.事件名称不需要添加 on
      2.后添加的不会覆盖先添加的
      3.只支持最新的浏览器 IE9
      oBtn.addEventListener("click", function () {
         alert("666");  // 后弹 666
      });
      oBtn.addEventListener("click", function () {
          alert("777");  // 先弹 777
      });
    
  • 方式三: 通过attachEvent方法添加
    • 注意点:
      1.事件名称必须加上 on
      2.后添加的不会覆盖先添加的
      3.只支持低版本的浏览器
      oBtn.attachEvent("onclick", function () {
          alert("666");  // 后弹 666
      });
      oBtn.attachEvent("onclick", function () {
          alert("777");  // 先弹 777
      });
    
  • 兼容性处理
      addEvent(oBtn, "click", function () {
          alert("666");  // 后弹 666
      });
      addEvent(oBtn, "click", function () {
          alert("777");  // 先弹 777
      });
      function addEvent(ele, name, fn) {
          if (ele.attachEvent){
              ele.attachEvent("on" + name, fn);
          } else {
              ele.addEventListener(name, fn);
          }
      }
    
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是事件: 我们可以简单的把事件理解为浏览器的感知系统。比如说:他可以感觉到用户是否点击(click)了页面、鼠...
    张松1366阅读 11,806评论 1 6
  • 声明:本文来源于http://www.webzsky.com/?p=731我只是在这里作为自己的学习笔记整理一下(...
    angryyan阅读 11,959评论 1 6
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,448评论 1 45
  • 事件绑定 要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数。所谓事件处理...
    gtt21阅读 1,346评论 0 0
  • 1.使用过的事件 onclick 点击 onchange 表单元素改变的时候 (三级联动) oninput 表单文...
    于晓鱼阅读 3,081评论 0 0

友情链接更多精彩内容