Всем известная функция addEvent и ее стандартная реализация:
Чтобы избежать постоянной проверки, следует проверять наличие нужных методов непосредственно при создании функции:
Тот же способ можно применить и к detachEvent, removeEventListener.
function addEvent(obj,name,func){
if(obj.addEventListener) {
obj.addEventListener(name, func, false);
}
else if (obj.attachEvent) {
obj.attachEvent('on'+name, func);
}
else {throw 'Error'};
}
Чтобы избежать постоянной проверки, следует проверять наличие нужных методов непосредственно при создании функции:
var addEvent= (function(){
if(document.addEventListener) {
return function(obj,name,func){
obj.addEventListener(name, func, false);
}
}
else if (document.attachEvent) {
return function(obj,name,func){
obj.attachEvent('on'+name, func);
}
}else return function(){throw 'Error'}
})()
Тот же способ можно применить и к detachEvent, removeEventListener.