私はこのような単純な js 構造を持っています:
var Waiting = (function () {
function Waiting() {
this.timer;
}
Waiting.prototype.show = function () {
var self = this;
clearTimeout( self.timer );
self.timer = setTimeout( function(){ self.hideLogo(); },3000);
}
Waiting.prototype.hideLogo = function () {
console.log("ok i passed timeout");
};
return Waiting;
})();
予想どおり、show 関数 (hideLogo と呼ばれる関数) を初めて実行したときに、すべてのブラウザーで "ok i pass timeout" というログが表示されます。show 関数を 2 回目に呼び出すと、IE9 で問題が発生します。今回は、hideLogo 関数が呼び出されることはありません (IE コンソールにログが表示されることはありません)。私は成功せずに多くのことを試みました。
アイデアとして誰か...