1. 程式人生 > >js IE和火狐繫結事件

js IE和火狐繫結事件

<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){
        if (event.target){
            return event.target;
        } else {
            return event.srcElement;
        }
    }

},
/取得事件目標物件
 preventDefault: function(event){
        if (event.preventDefault){
            event.preventDefault();
        } else {
            event.returnValue = false;
        }
    },
//阻止預設事件
var btn = document.getElementById("myBtn");
 EventUtil.addHandler(btn, "click", function(event){
                event = EventUtil.getEvent(event);
//取得事件物件
                var target = EventUtil.getTarget(event);
//取得事件目標物件
})
}();
</script>