最も単純なイベント ハンドラー関数をセットアップしました。events.remove()
IE < 9を除いて、すべてがうまく機能します。つまり、 .detachEvent()
.
Windows XP と IE8 を実行している IETester と VirtualBox でテストを行っています。
events = {
add: (function () {
if (document.documentElement.addEventListener) {
return function (elm, type, func) {
elm.addEventListener(type, func, false);
};
} else if (document.documentElement.attachEvent) {
return function (elm, type, func) {
elm.attachEvent('on' + type, function () {
func.call(elm, window.event);
});
elm = null; //clean up possible memory leaks?
};
}
}()),
remove: (function () {
if (document.documentElement.removeEventListener) {
return function (elm, type, func) {
elm.removeEventListener(type, func, false);
};
} else if (document.documentElement.detachEvent) {
return function (elm, type, func) {
elm.detachEvent('on' + type, function () {
func.call(elm, window.event);
});
elm = null; //clean up possible memory leaks?
};
}
}())
};