js IE和火狐繫結事件
阿新 • • 發佈:2019-01-02
<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>