<script>
function(){
var EventUtil = {
//判断浏览器(绑定事件)
addHandler: function(element, type, handler){
        if (element.addEventListener){
            element.addEventListener(type, handler, false);
        } else if (element.attachEvent){
            element.attachEvent("on" + type, handler);
        } else {
            element["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 {
            element["on" + type] = null;
        }
    },
//取得事件对象
 getEvent: function(event){
        return event ? event : window.event;
    },
//取得事件目标对象
getTarget: function(event){
     event=getEvent(event);
        if (event.target){
            return event.target;
        } else {
            return event.srcElement;
        }
    }

},
 //阻止默认事件 
  preventDefault: function(event){
        event=getEvent(event);
        if (event.preventDefault){
            event.preventDefault();
        } else {
            event.returnValue = false;
        }
    },
 //获取code
 getCode:function(event){
 event=getEvent(event);
 return event.charCode?event.charCode:keyCode;
 }
 //获取X.Y
 getXY:function(event){

 event=getEvent(event);
 var point={};
 point.x=event.layerX?event.layerX:event.offsetX;
 point.y=event.layerY?event.layerY:event.offsetY;
 return point;
 }
 // 关联对象
 getRelatedTarget:function(event){

  return event.relatedTarget?event.relatedTarget:(fromElement||toElement)
; }
 //调用
EventUtil.addHandler(document, "click", function(event){
                event = EventUtil.getEvent(event);//取得事件对象
                var target = EventUtil.getTarget(event);//取得事件目标对象                       })
}();
</script>

参考http://blog.csdn.net/qq28754889/article/details/7077815