跨浏览器的事件对象

var eventUtil = {
	addListener: function(element, type, hander) {
		if (element.addEventListener) {
			element.addEventListener(type, hander, false);
		} else if (element.attachEvent) {
			element.attachEvent('on' + type, hander);
		} else {
			element['on' + type] = hander;
		}
	},
	
	getEvent: function(event) {
		return event || window.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;
		}
	},
	
	removeListener: function(element, type, hander) {
		if (element.removeEventListener) {
			element.removeEventListener(type, hander, false);
		} else if (element.deattachEvent) {
			element.detachEvent(type, hander);
		} else {
			element['on' + type] = null;
		}
	},
	
	stopPropagation: function(event) {
		if (event.stopPropagation) {
			event.stopPropagation();
		} else {
			event.cancelBubble = true;
		}
	}
};

你可能感兴趣的:(跨浏览器的事件对象)