0

サイトにカウンターがあり、サイトがフォーカスされていないときにこれを一時停止したい. ぼかしを使用して (誰かがフォーカスを離れて)、誰かがリンクをクリックして新しいタブで開き、タブを閉じた場合、フォーカスは前のページに戻りませんか? なぜ機能しないのですか?それを行うより良い方法はありますか?

$(document).blur(function(){
    pause=true;
});

$(document).focus(function(){
    //alert("test");
    pause=false;

    countdown(tmp,msg);
});
4

3 に答える 3

4

には付いていないと思いますdocumentが、window

$(window).focus(function(){...});
$(window).blur(function(){...});

私がいつも遭遇するのは、ネイティブ JS バージョンwindow.onfocuswindow.onblur. これらはjQueryでも使用/抽象化されていると思います。

于 2012-05-14T10:07:35.763 に答える
0

基本的に、誰かがページをクリックするかタブで移動するまでフォーカスを取得しません。これがフォーカスのしくみです。以下の作業コード:-

 $(function() {

    $(window).focus(function() {
        alert("in");
    });
     $(window).blur(function() {
        alert("out");
    });

});

ウィンドウ マウス イン/アウト イベントを追加することもできますが、タッチ デバイスはサポートされず、複数の画面を使用するユーザーには問題が発生するため、これはお勧めしません。

あなたの問題は、JSの問題ではなく、ソフトウェアの問題です。この場合、ブラウザに翻弄されますが、目的のタブに戻っても、ウィンドウ自体をクリックするまではぼやけた状態のままです。

于 2016-07-04T11:29:27.457 に答える