通过原生JS实现为元素添加事件的方法
自己写了一个为元素添加事件的方法,并封装到对象中。
说明:
id:目标元素的ID
type:事件的类型,注意的是不能加on
fn:事件处理程序
isBubble:规定事件流
代码:
varbindEvent={
'add':function(id,type,fn,isBubble){
vardom=document.getElementById(id);
if(!isBubble)isBubble=false;
if(dom.addEventListenner){
dom.addEventListenner(type,fn,isBubble);
}elseif(dom.attachEvent){
Transit=function(){
fn.call(dom);
}
dom.attachEvent('on'+type,Transit);
}else{
dom['on'+type]=fn;
}
},
'remove':function(id,type,fn,isBubble){
vardom=document.getElementById(id);
if(!isBubble)isBubble=false;
if(dom.removeEventListenner){
dom.removeEventListenner(type,fn,isBubble)
}elseif(dom.detachEvent){
dom.detachEvent('on'+type,Transit)
}else{
dom['on'+type]=null;
}
}
}
调用方法:
//定义事件处理程序
functionmsg(){
alert(this.tagName)
}
//为目标元素绑定事件
bindEvent.add('link','click',msg,false);
//解除目标元素绑定的事件
bindEvent.remove('link','click',msg,false);
以上这篇通过原生JS实现为元素添加事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下