首页 > 编程语言 > 详细

Javascript-事件

时间:2020-01-27 16:13:27      阅读:63      评论:0      收藏:0      [点我收藏+]

DOM事件流:

  1、事件冒泡技术分享图片  2、事件捕获

技术分享图片

 

 

DOM2事件流:

  1、事件捕获阶段

  2、处于目标阶段

  3、事件冒泡阶段

技术分享图片

DOM3事件

事件处理程序:

  1、HTML事件处理程序:

  例一:<input type="button" value="Click Me" onclick="alert(‘Clicked‘)" />

  例二:<input type="button" value="Click Me" onclick="showMessage()" />

  缺点:(1)存在时差问题,页面未解析事件处理函数之前触发事件会发生报错

        (2)扩展事件处理程序的作用域链在不同的浏览器中会导致不同的结果

  2、DOM0级事件处理程序:

  例一:var btn=document.getElementById("myBtn");

     btn.onclick=function(){

        alert("Clicked");

      };

  事件处理程序是在元素的作用域中运行,事件处理程序会在事件流的冒泡阶段被处理。

  3、DOM2级事件处理程序

  例一:var btn=document.getElementById("myBtn");

     btn.addEventListener("click",function(){

      alert(this.id);

      },false);//此方式无法通过removeEventListener()来移除事件;

  例二:var btn=document.getElementById("myBtn");

     var handler=function(){

      alert(this.id);

      };

     btn.addEventListener("click",handler,false);//先添加先执行

     btn.removeEventListener("click",handler,false);//参数需与添加函数参数一致;

   4、IE事件处理程序:

  例一:var btn=document.getElementById("myBtn");

     btn.attachEvent("onclick",function(){

      alert("Clicked");

      });//事件处理程序在全局作用域内运行,this等于window;

       //先添加后执行;

       //此方式无法通过detachEvent()来移除事件;

  例二:var btn=document.getElementById("myBtn");

     var handler=function(){

      alert(this.id);

      };

     btn.attachEvent("onclick",handler);

     btn.detachEvent("onclick",handler);

Javascript-事件

原文:https://www.cnblogs.com/brandbao-blog/p/12236199.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!