博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个通用的事件监听函数全集
阅读量:7093 次
发布时间:2019-06-28

本文共 2449 字,大约阅读时间需要 8 分钟。

hot3.png

// event(事件)工具集,来源:github.com/markyun    markyun.Event = {        // 页面加载完成后        readyEvent : function(fn) {            if (fn==null) {                fn=document;            }            var oldonload = window.onload;            if (typeof window.onload != 'function') {                window.onload = fn;            } else {                window.onload = function() {                    oldonload();                    fn();                };            }        },        // 视能力分别使用dom0||dom2||IE方式 来绑定事件        // 参数: 操作的元素,事件名称 ,事件处理程序        addEvent : function(element, type, handler) {            if (element.addEventListener) {                //事件类型、需要执行的函数、是否捕捉                element.addEventListener(type, handler, false);            } else if (element.attachEvent) {                element.attachEvent('on' + type, function() {                    handler.call(element);                });            } else {                element['on' + type] = handler;            }        },        // 移除事件        removeEvent : function(element, type, handler) {            if (element.removeEnentListener) {                element.removeEnentListener(type, handler, false);            } else if (element.datachEvent) {                element.detachEvent('on' + type, handler);            } else {                element['on' + type] = null;            }        },         // 阻止事件 (主要是事件冒泡,因为IE不支持事件捕获)        stopPropagation : function(ev) {            if (ev.stopPropagation) {                ev.stopPropagation();            } else {                ev.cancelBubble = true;            }        },        // 取消事件的默认行为        preventDefault : function(event) {            if (event.preventDefault) {                event.preventDefault();            } else {                event.returnValue = false;            }        },        // 获取事件目标        getTarget : function(event) {            return event.target || event.srcElement;        },        // 获取event对象的引用,取到事件的所有信息,确保随时能使用event;        getEvent : function(e) {            var ev = e || window.event;            if (!ev) {                var c = this.getEvent.caller;                while (c) {                    ev = c.arguments[0];                    if (ev && Event == ev.constructor) {                        break;                    }                    c = c.caller;                }            }            return ev;        }    };

 

转载于:https://my.oschina.net/newgoup/blog/703818

你可能感兴趣的文章
grep正则表达式
查看>>
linux下dns服务搭建
查看>>
ThinkPHP下S()函数的使用
查看>>
java实现佛洛依德(Floyd)算法关于求有向图每对顶点间的最短路径问题
查看>>
shell检测网站状态码和访问时间
查看>>
OC语言基础知识
查看>>
天。鬼。法
查看>>
MongoDB启用身份验证
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
5.SpringMVC
查看>>
4.Java JSON使用
查看>>
XWork中的数据流与控制流
查看>>
洛谷——P2656 采蘑菇
查看>>
不知不觉我自己习惯了晚睡
查看>>
我的友情链接
查看>>
让电影尖叫:京东众筹试水跳板时代
查看>>
53 网络虚拟化技术进阶
查看>>
Linux(CentOS)最小化(mini)安装VMware Tools
查看>>
php中$_GET传递数组的实现
查看>>