2017-02-21 22 views
0

ユーザアイドルタイムアウトが5秒の場合、オファーバナーを表示したいが、次のコードはアイドルタイムが5秒ごとにオファーバナーを表示している。しかし、 seconds.Any本体は、あなたが一度だけ実行される代わりにsetIntervalユーザアイドルタイムアウトのために1回だけ機能を実行する

window.setTimeout(function(){ 
     timerIncrement(); 
}, 5000); 

このsetTimeoutを使用する必要が

$(document).ready(function(){ 

      idleTime = 0;   


      //Increment the idle time counter every five second. 
      var idleInterval = setInterval(timerIncrement, 5000); 

      function timerIncrement() 
      { 
      console.log(idleTime++); 
      if (idleTime > 5) 
      { 
       doPreload();  

      } 
      } 

      //Zero the idle timer on mouse movement. 
      $(this).mousemove(function(e){ 

       idleTime = 0; 

      }); 

      function doPreload() 
      { 
      $('#add-click').click(); 

      } 

     }); 
+0

...)doPreload内で..私は閉鎖のためタイマーの中のidleTime変数をチェックすることはできないと思います。 – Max

答えて

1

私を助けます。

+0

でもうまくいきません – Nageswar

+0

JSFiddleまたはplunkrを作成して確認できますか? –

+0

お待ちしておりますので、私は – Nageswar

0

setIntervalの代わりにsetTimeoutを試してみませんか?

+0

これはコメントではありません。 –

+0

私はコメントできません、50人の担当者が必要です:) – Sooraz

0

だけマウスを使用しているあなたはそれをチェックしなければならないものをユーザーがキーボードで作業している場合移動も

var inactivityTime = function() { 
var temp; 
window.onload = resetTimer; 
document.onmousemove = resetTimer; 
document.onkeypress = resetTimer; 

function resetTimer() { 
    clearTimeout(temp); 
    temp = setTimeout(logout, 3000) 
    // 1000 milisec = 1 sec 
} 
}; 
0

は、この機能でロジックを修正:

var idleInterval = setInterval(timerIncrement, 1000); 
    function timerIncrement() { 
    console.log(idleTime++); 
    if (idleTime == 5) { 
     doPreload(); 
     idleTime = 0; // reset idleTime variable  
     } 
    } 

    /** This will increase counter by one every second, 
    * and if counter reaches to 5 then call to banner 
    * display and reset counter. 
    */ 
場合(アイドルを移動
関連する問題