javascript 句柄 --DOM事件处理及跨浏览器处理
2016-05-06 17:43
816 查看
var eventUtil={
// 添加句柄
addHandler:function(element,type,handler){
if(element.addEventListener){
element.addEventListener(type,handler,false);
}else if(element.attachEvent){
element.attachEvent('on'+type,handler);
}else{
element['on'+type]=handler;
}
},
// 删除句柄
removeHandler:function(element,type,handler){
if(element.removeEventListener){
element.removeEventListener(type,handler,false);
}else if(element.detachEvent){
element.detachEvent('on'+type,handler);
}else{
element['on'+type]=null;
}
},
getEvent:function(event){
return event?event:window.event;
},
getType:function(event){
return event.type;
},
getElement:function(event){
return event.target || event.srcElement;
},
preventDefault:function(event){
if(event.preventDefault){
event.preventDefault();
}else{
event.returnValue=false;
}
},
stopPropagation:function(event){
if(event.stopPropagation){
event.stopPropagation();
}else{
event.cancelBubble=true;
}
}
}
// 添加句柄
addHandler:function(element,type,handler){
if(element.addEventListener){
element.addEventListener(type,handler,false);
}else if(element.attachEvent){
element.attachEvent('on'+type,handler);
}else{
element['on'+type]=handler;
}
},
// 删除句柄
removeHandler:function(element,type,handler){
if(element.removeEventListener){
element.removeEventListener(type,handler,false);
}else if(element.detachEvent){
element.detachEvent('on'+type,handler);
}else{
element['on'+type]=null;
}
},
getEvent:function(event){
return event?event:window.event;
},
getType:function(event){
return event.type;
},
getElement:function(event){
return event.target || event.srcElement;
},
preventDefault:function(event){
if(event.preventDefault){
event.preventDefault();
}else{
event.returnValue=false;
}
},
stopPropagation:function(event){
if(event.stopPropagation){
event.stopPropagation();
}else{
event.cancelBubble=true;
}
}
}
相关文章推荐
- Js判断客户端是否为PC还是手持设备
- 十分钟知道JavaScript 闭包
- 【概念】js闭包之块级作用域
- js中json与string相互转换
- JavaScript(一)
- getJSON 2 取值
- $.getJSON 和 $.each 的用法
- js 分页
- Gulp.js简介
- JS文件传值问题
- js判断元素是否隐藏的方法
- JavaScript最佳实践:性能 自己留存
- 移动web js触屏事件 按下 松开 滑动
- js判断变量是否为空或者。。。
- 10、JavaScript利用正则去除前后空格
- JavaScript数组方法总结分析
- js闭包-简介
- JS平滑无缝滚动效果的实现代码
- JS中可以获取session
- 【分享/转】用js写一个模板引擎