2021-08-16事件一如何绑定事件处理函数 事件处理程序运行环境 解除事件处理程序

在这里插入图片描述
1.句柄的方式:
在这里插入图片描述
2.addEventListener(事件类型,处理函数。false)
在这里插入图片描 述
一个事件可以绑定多个处理程序:按顺序执行
在这里插入图片描述
在这里插入图片描述
若两个一样的执行函数:执行两个,长得一样,但是地址不一样
在这里插入图片描述
在这里插入图片描述
但是,这里的test是一个人,所以只执行一遍
在这里插入图片描述
在这里插入图片描述
3.div.attachEvent(“onclick”,function())
功能和addeventlistenr(“click”,fn,false)一样,但这个更强大,同一个函数绑定多次,也能执行(但只能IE用)

例题:注意闭包,要用立即执行函数解决:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.ele.onxxx=function(){},this是本身
在这里插入图片描述
在这里插入图片描述
2.obj.addEventListener(type,fn,flase),this也是自己
在这里插入图片描述
在这里插入图片描述
3.obj.attachEvent(“on”+type,fn),this指向window
在这里插入图片描述
即需要改变this指向,用call()!!!
在这里插入图片描述
4.封装兼容的方法:
工具库:

// An highlighted block
//事件处理程序的运行环境,封装兼容性的方法
function addEvent(elem,type,handle){
    if(elem.addEventListener){
        elem.addEventListener(type,handle,false);
    }else if(elem.attachEvent){
        elem.attachEvent('on'+type,function(){
            handle.call(elem);
        })
    }else{
        elem['on'+type]=handle;
    }
}

在这里插入图片描述

1.解除事件:.οnclick=null
在这里插入图片描述
例子:广告关掉就不会出现了:
在这里插入图片描述
2.div.removeEventListener(“click”,fn,false)这里的fn必须是函数名,否则删不掉,所以,在一开始写执行点击的时候就要把函数写在外面
在这里插入图片描述
点不了是因为,写了removeEventListener,删掉了addEventListener操作
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值