zoukankan      html  css  js  c++  java
  • attachEvent(a)、detachEvent(b)和addEventListener(c)、removeEventListener(d)的区别和使用注意

    1、使用d移除c时(只能通过d来移除),c的第二个参数不能是匿名函数

    如:btn.addEventListener('click',function(){},false),是不能被移除的。

      btn.addEventListener('click',handler,false)可以通过btn.removeEventListener('click',handler,false)移除,参数3如果是false可以省略,true要保存一致

      a也要b来移除,参数也要一样

      DOM0级,直接用btn.onclick = null; 来移除

    2、c和d中,参数3代表捕获阶段,true事件捕获(captrue),false事件冒泡(bubbling)。 a、b不用,因为都是冒泡,所以只要两个参数

    3、a、b参数1 onclick,c、d参数1 click

    4、a、b中的函数运行环境是window,this指向window(event.srcElement指向当前对象)。c、d包括DOM0都是所属元素的作用域中。

    5、a、b中添加多个事件,执行顺序是后添加先执行,c、d是先添加先执行,DOM0不支持多事件。

    6、阻止默认事件a设置returnValue属性,(window.event.returnValue=false)。c用event.preventDefault()方法

    a、b在IE11中也不被支持,另外也可以直接在HTML中添加事件,JS和HTML耦合太强,基本被舍弃了

  • 相关阅读:
    Canvas中的save方法和restore方法
    python之函数默认参数的坑
    python之函数名的应用
    python之golbal/nonlocal
    python之*的魔性用法
    python之函数的传参形参的第三种动态参数*args和**kwargs
    python之道09
    python之函数的初识
    python之道08
    python之99乘法表
  • 原文地址:https://www.cnblogs.com/dddbj/p/5780566.html
Copyright © 2011-2022 走看看