0

ブラウザのウィンドウを閉じるのに少し問題があります。

基本的に、非アクティブ状態が 15 分間続くと閉じたいページがあります。10分間非アクティブになった後にウィンドウに警告するタイマーを作成することができました。

私が必要としているのは、タイマーが終了すると、カウントダウンが表示されたポップアップ/アラートが表示され、ここからユーザーがセッションを続行するか終了できることです。ユーザーが続行をクリックしないか、さらに 5 分間ポップアップを無視すると、ポップアップと親ウィンドウの両方が閉じます。それ以外の場合、ユーザーが続行を押すと、ポップアップが閉じられ、メイン ページが更新されます (したがって、タイマーが再び開始されます)。これが私のコードです:

    var idleTime = 0;
    var activeTime = 0;
    var warningFlag = 0;
    var loginTime = new Date();
    var logoutTime = loginTime;
    setInterval(function checkIdle() {
        idleTime += 1;
        activeTime += 1;
          if(idleTime > 10) {
            alert("You've been inactive for 10 \n minutes, are you still there ?\nYou logged in at " + loginTime);
            warningFlag=1;
        }
        if((idleTime > 15) && (warningFlag==1)) {
            alert("You've been logged out due to inactivity for 15 \n minutes? \nYou logged out at " + logoutTime);
            window.close();
        }
        window.onload = resetTimer;
        document.onmousemove = resetTimer;
        document.onkeypress = resetTimer;
    },1000);

    function resetTimer() {
         idleTime = 0;
    }
4

2 に答える 2

2

アラート ウィンドウの代わりに、可視性の非表示/可視性を切り替える div を使用します。その div には、カウントダウン時間を表示するための別のコンテナー、div またはスパンが含まれている必要があります。

于 2012-07-02T19:49:23.690 に答える
0

モーダル ウィンドウを使用できます。これらは、div を表示し、ページの残りの部分を黒く塗りつぶすことで、アラートのように動作します。

ここでいくつかの良い例を見ることができます:

http://www.scriptiny.com/2011/03/javascript-modal-windows/

お役に立てれば。

于 2012-07-02T19:58:50.633 に答える