tips blog

【js】ieはaddEventListenerが使えないので対応

2011年3月10日

ie
addEventListener -> attachEvent
removeEventListener -> detachEvent

更にattachEventではthisが使えないので対応
function bf(b,f){return function(){return f.apply(b,arguments)}}

functionがreturnされてるので、そのままの関数で削除できるか心配したが対応してた

function bind(o,t,f){

function bf(b,f){return function(){return f.apply(b,arguments)}}
if(o.addEventListener)o.addEventListener(t,f,false);
else o.attachEvent(“on”+t,bf(o,f));
}
function unbind(o,t,f){
if(o.removeEventListener)o.removeEventListener(t,f,false);
else o.detachEvent(“on”+t,f);
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です