• js 监听事件的叠加和移除


      html DOM元素有很多on开头的监听事件,如onload、onclick等,见DOM事件列表。但是同一种事件,后面注册的会覆盖前面的:

    window.onresize = function(){
    	alert(1);
    }
    window.onresize = function(){
    	alert(2);
    }
    // 改变窗口大小时,只会弹出2
    

    addEventListener监听

      利用addEventListener添加监听事件,可以重复添加,并不会互相覆盖: 

    window.addEventListener("resize",function(){
    	alert(1)
    })
    window.addEventListener("resize",function(){
    	alert(2)
    })
    // 改变窗口大小时,先后弹出1和2
    

      注意这里面的事件是不带"on"前缀的。

    removeEventListener移除监听

      removeEventListener跟addEventListener相对应,用于移除事件监听。

      如果要移除事件句柄,addEventListener() 的执行函数必须使用外部具名函数,匿名函数事件是无法移除的。

    // 匿名函数事件无法移除
    window.addEventListener("resize",function(){
    	alert(1)
    })
    
    // 监听具名函数事件
    function myResize(){
    	alert(2)
    }
    window.addEventListener("resize",myResize)
    // 移除事件监听
    window.removeEventListener("resize",myResize)
    

      

  • 相关阅读:
    java中字符串类型的比较
    iOS 检测是否插入耳机
    Model-View-Controller (The iPhone Developer's Cookbook)
    Spring Animation
    CoreImage 自动增强滤镜 以及 系统滤镜查询
    UIView Animation
    CoreImage 查询系统滤镜
    CoreImage 的人脸检测
    Smarty 模板操作
    smarty转载(1)
  • 原文地址:https://www.cnblogs.com/yangshifu/p/9981753.html
Copyright © 2020-2023  润新知