通过原生JS实现为元素添加事件的方法

前端之家收集整理的这篇文章主要介绍了通过原生JS实现为元素添加事件的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

自己写了一个为元素添加事件的方法,并封装到对象中。

说明:

id : 目标元素的ID

type: 事件的类型,注意的是不能加on

fn:事件处理程序

isBubble :规定事件流

代码

'add':function(id,type,fn,isBubble){ var dom = document.getElementById(id); if(!isBubble) isBubble=false; if(dom.addEventListenner){ dom.addEventListenner(type,isBubble); }else if(dom.attachEvent){ Transit = function(){ fn.call(dom); } dom.attachEvent('on'+type,Transit); }else{ dom['on'+type] = fn; } },'remove':function(id,isBubble){ var dom = document.getElementById(id); if(!isBubble) isBubble=false; if(dom.removeEventListenner){ dom.removeEventListenner(type,isBubble) }else if(dom.detachEvent){ dom.detachEvent('on'+type,Transit) }else{ dom['on'+type]=null; } }

}

调用方法

//为目标元素绑定事件
bindEvent.add('link','click',msg,false);

//解除目标元素绑定的事件
bindEvent.remove('link',false);

以上这篇通过原生JS实现为元素添加事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

猜你在找的JavaScript相关文章