click+ctrl/shift/alt/meta,跨浏览器添加事件+访问Event对象

var eventUtil = {
	//绑定事件
	addHandler:function(element,type,handler){
		if(element.addEventListener){
			//chrome,firefox,safari,opera,IE9+
			element.addEventListener(type,handler);
		}else if(element.attachEvent){
			//IE8及以下
			element.attachEvent("on"+type,handler);
		}else{
			//其他
			element["on"+type] = null;
		}
	},
	//解绑事件
	removeHandler:function(element,type,handler){
		if(element.removeEventListener){
			//chrome,safari,firefox,opera,IE9+
			element.removeEventListener(type,handler);
		}else if(element.detachEvent){
			//IE8及以下
			element.detachEvent("on"+type,handler);
		}else{
		//其他
			element["on"+type] = null;
		}
	},
	//Event对象,getTarget,cancelBubble,returnValue,
	getTarget:function(event){
		return event.target || event.srcElement;
	},
	//阻止冒泡
	stopPropagation:function(event){
		if(event.stopPropagation){
			event.stopPropagation();
		}else{
			event.cancelBubble = true; 
		}
	},
    	//阻止默认属性
	preventDefault:function(event){
		if(event.preventDefault){
			event.preventDefault();
		}else{
			event.returnValue = false;
		}
	}
};

var div = document.getElementById("div");
//同时点击与按 ctrl,shift,meta,alt键 event属性
eventUtil.addHandler(div,"click",function(event){
	var keys = new Array();
	if(event.shiftKey){
		keys.push("shift");
		}
	if(event.ctrlKey){
		keys.push("ctrl");
	}
	if(event.altKey){
		keys.push("alt");
	}
	if(event.metaKey){
		keys.push("meta");
	}
	console.log("keys: "+ keys.join(","));
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值