var EventUtil = { addHandler: function (element, type, handler) { if (element.addEventListener) { /*true表示在捕获阶段处理事件,false则是冒泡阶段调用事件处理函数。*/ element.addEventListener(type, handler, false); } else if (element.attachEvent) { element.attachEvent("on" + type, handler);//IE } else { elemenlc_"on" + type = handler; } }, removeHandler: function (element, type, handler) { if (element.removeEventListener) { element.removeEventListener(type, handler, false); } else if (element.detachEvent) { element.detachEvent("on" + type, handler); } else { elemenlc_"on" + type = null; } }, fmtEvent: function (event) { return event ? event : window.event;//IE中event是一个全局属性 }, getEvent: function(){ return window.event || arguments.callee.caller.arguments[0]; }, getTarget: function (event) { return event.target || event.srcElement;//IE中事件源通过srcElement得到 }, /*阻止冒泡*/ stopBubble: function (event){ if (event && event.stopPropagation) {//非IE event.stopPropagation(); } else { //IE window.event.cancelBubble = true; } }, /*屏蔽浏览器默认行为*/ stopDefault: function (event){ if (event && event.preventDefault){ event.preventDefault(); }else{ window.event.returnValue = false; //IE } return false; } };