関数を呼び出すために setTimeout を使用しようとしています。ウィンドウがフォーカスされていない場合は、ウィンドウが再びフォーカスされるまで一時停止するようにその関数を設定します。私のスクリプトを見てみましょう
(function() {
var time = 10000,
delta = 100,
tid;
tid = setInterval(function() {
if ( window.blurred ) { return; }
time -= delta;
if ( time <= 0 ) {
clearInterval(tid);
dosomething (user_id); // function to do something
}
}, delta);
})();
window.onblur = function() { window.blurred = true; };
window.onfocus = function() { window.blurred = false; };
実際には期待どおりに動作しますが、
私の質問は:
- メソッドを ------> setTimeout および clearTimeout に変更しようとしています なぜ機能しないのですか?
- 多くのテストの後、この機能は IE では機能しないことがわかりました。解決策はありますか?