绑定事件
01.var addEvent = function( obj, type, fn ) { 02. if (obj.addEventListener) 03. obj.addEventListener( type, fn, false ); 04. else if (obj.attachEvent) { 05. obj["e"+type+fn] = fn; 06. obj.attachEvent( "on"+type, function() { 07. obj["e"+type+fn](); 08. } ); 09. } 10.};另一个实现
01.var addEvent = (function () { 02. if (document.addEventListener) { 03. return function (el, type, fn) { 04. el.addEventListener(type, fn, false); 05. }; 06. } else { 07. return function (el, type, fn) { 08. el.attachEvent('on' + type, function () { 09. return fn.call(el, window.event); 10. }); 11. } 12. } 13.})();移除事件
1.var removeEvent = function(obj, type, fn) { 2. if (obj.removeEventListener) 3. obj.removeEventListener( type, fn, false ); 4. else if (obj.detachEvent) { 5. obj.detachEvent( "on"+type, obj["e"+type+fn] ); 6. obj["e"+type+fn] = null; 7. } 8.}加载事件与脚本
01.var loadEvent = function(func) { 02. var oldonload = window.onload; 03. if (typeof window.onload != 'function') { 04. window.onload = func; 05. }else { 06. window.onload = function() { 07. oldonload(); 08. func(); 09. } 10. } 11.}阻止事件
01.var cancelEvent = function(event) { 02. event = event||window.event 03. if (event.preventDefault) { 04. event.preventDefault( ); 05. event.stopPropagation( ); 06. } else { 07. event.returnValue = false; 08. event.cancelBubble = true; 09. } 10.}取得事件源对象
相当于Prototype.js框架的Event.element(e)
1.var getTarget = function(event){ 2. event = event || window.event; 3. var obj = event.srcElement ? event.srcElement : event.target; 4. return obj
浙公网安备 33010602011771号