JavaScript JS跨浏览器事件绑定

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript JS跨浏览器事件绑定相关的知识,希望对你有一定的参考价值。

var addEvent = (function( window, document ) {
	if ( document.addEventListener ) {
		return function( elem, type, cb ) {
			if ( (elem && !elem.length) || elem === window ) {
				elem.addEventListener(type, cb, false );
			}
			else if ( elem && elem.length ) {
				var len = elem.length;
				for ( var i = 0; i < len; i++ ) {
					addEvent( elem[i], type, cb );
				}
			}
		};
	}
	else if ( document.attachEvent ) {
		return function ( elem, type, cb ) {
			if ( (elem && !elem.length) || elem === window ) {
				elem.attachEvent( 'on' + type, function() { return cb.call(elem, window.event) } );
			}
			else if ( elem.length ) {
				var len = elem.length;
				for ( var i = 0; i < len; i++ ) {
					addEvent( elem[i], type, cb );
				}
			}
		};
	}
})( this, document );
// Example Usage
var lis = document.getElementsByTagName('li');
addEvent( window, 'click', function() {
	this.style.border = '1px solid red';
	
});

以上是关于JavaScript JS跨浏览器事件绑定的主要内容,如果未能解决你的问题,请参考以下文章

js实现一些跨浏览器的事件方法

js 实现一些跨浏览器的事件方法详解及实例

js 事件绑定

在页面加载时绑定事件的跨浏览器兼容方式

JS事件绑定的两种形式

JavaScript学习第一天