【学习点滴-js】js 中事件对象封装。
2012-04-13 15:43
369 查看
由于浏览器的差异。事件中的一些处理不得不出现大量这样类似的代码 var event = event?event:window.event;
这当然不是我们想要的,于是需要把常见的事件处理封装起来,便于我们方便地使用。
javascript 高级程序设计中封装代码如下:
这当然不是我们想要的,于是需要把常见的事件处理封装起来,便于我们方便地使用。
javascript 高级程序设计中封装代码如下:
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; } }, /* 获取event对象的引用 */ getEvent: function(event){ return event? event : window.event; }, /* 获取事件的目标 */ getTarget:function(event){ return event.target || event.srcElement; }, /* 取消事件的默认函数 */ preventDefault:function(event){ if(event.preventDefault){ event.preventDefault(); }else{ event.returnValue = false; } }, /* 移除时间处理程序 */ removeHandler : function(){ if(element.removeEventListener){ element.removeEventListener(type,handler,false); }else if(element.detachEvent){ element.detachEvent("on"+type,handler); }else{ element["on"+type] = null; } }, /* 阻止事件流继续传播 */ stopPropagation : function(event){ if(event.stopPropagation){ event.stopPropagation(); }else{ event.cancelBubble = true; } }, /* 获取相关元素 */ getRelatedTarget : function(event){ if(event.relatedTarget){ return event.relatedTarget; }else if(event.toElement){ return event.toElement; }else if(event.fromElement){ return event.fromElement; }else{ return null; } }, /*获取按键编码*/ getCharCode : function(event){ return (typeof event.charCode == "number")?event.charCode:event.keyCode; }, //获取剪切板数据 getClipboardText:function(event){ var clipboardData = window.clipboardData || event.clipboardData; return clipboardData.getData("text"); } };
相关文章推荐
- JavaScript学习笔记之JS事件对象
- 韩顺平 javascript教学视频_学习笔记27_dom对象(window对象3.history.location.navigator.screen.event)_js事件驱动编程
- 对原生js事件对象处理的封装
- JavaScript事件学习小结(三)js事件对象
- JS 学习笔记--JS中的事件对象基础
- JavaScript学习笔记之JS事件对象
- js给对象标签添加事件&方法的封装
- js中的event事件对象兼容型写法及事件流学习笔记
- javascript学习(十二):js 中为某个对象(控件)绑定事件通常可以采取两种手段
- js学习小结(十二)2014.5.20(事件冒泡以及事件对象)
- 深入js的面向对象学习篇(封装是一门技术和艺术)——温故知新(二)
- 【js学习之路】事件绑定函数中,将this换成调用对象导致的问题
- JS-DOM2级事件对象跨浏览器处理(已封装)
- js学习笔记:事件——事件流、事件处理程序、事件对象
- 【学习】js学习笔记:对象的遍历和封装特性
- 【js基础】js事件对象学习笔记
- Js学习---妙味课堂3-1 (事件对象和事件冒泡)--- 获取鼠标+键盘事件
- js学习小计2-事件对象
- JavaScript学习点滴—js对象的四种类型的属性、方法的访问
- 【js学习笔记-063】RegExp对象