通用的事件侦听器函数

markyun.Event={
	//页面加载完成后
	readyEvent:function(fn){
		if(fn==null){
			fn=document;
		}
		var oldοnlοad=window.onload;
		if(typeof window.onload!='function'){
			window.οnlοad=fn;
		}else{
			window.οnlοad=function(){
				oldonload();
				fn();
			};
		}
	},
	//添加事件
	addEvent:function(element,type,handle){
		if(element.addEventListener){
			//事件类型、需要执行的函数、是否捕捉
			element.addEventListener(type,handle,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.removeEventListener){
			element.removeEventListener(type,handler,false);
		}else if(element.detachEvent){
			element.detachEvent('on'+type,handler);
		}else{
			element['on'+type]=null;
		}
	},
	//阻止事件
	stopPropagation:function(ev){
		if(ev.stopPropagation){
			ev.stopPropagation();
		}else{
			ev.cancleBubble=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;
	}
};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值