Phiên bản đầy đủ: jsB@nk » Thủ thuật » Rock Solid addEvent()
URL: https://www.javascriptbank.com/rock-solid-addevent.html
Thông thường, khi một event được tải, nó sẽ ghi đè lên cái trước đó. Tuy nhiên, với đoạn mã JavaScript JavaScript này, bạn có thể thêm nhiều event trên một trang web mà không có vấn đề gì.
Phiên bản đầy đủ: jsB@nk » Thủ thuật » Rock Solid addEvent()
URL: https://www.javascriptbank.com/rock-solid-addevent.html
<script language="javascript"><!-- Add the following snippet to your basic JavaScript file -->/* Created by Dustin Diazhttp://www.dustindiaz.com/ */function addEvent(obj, type, fn) { if (obj.addEventListener) { obj.addEventListener(type, fn, false); EventCache.add(obj, type, fn); } else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj[type+fn] = function() {obj["e"+type+fn](window.event);} obj.attachEvent("on"+type, obj[type+fn]); EventCache.add(obj, type, fn); } else { obj["on"+type] = obj["e"+type+fn]; }}var EventCache = function(){ var listEvents = []; return { listEvents : listEvents, add : function(node, sEventName, fHandler){ listEvents.push(arguments); }, flush : function(){ var i, item; for(i = listEvents.length - 1; i >= 0; i = i - 1){ item = listEvents[i]; if(item[0].removeEventListener){ item[0].removeEventListener(item[1], item[2], item[3]); }; if(item[1].substring(0, 2) != "on"){ item[1] = "on" + item[1]; }; if(item[0].detachEvent){ item[0].detachEvent(item[1], item[2]); }; item[0][item[1]] = null; }; } };}();addEvent(window,'unload',EventCache.flush);</script><!-- This script downloaded from www.JavaScriptBank.com Come to view and download over 2000+ free javascript at www.JavaScriptBank.com-->