如何检测机器是否空闲,在15秒钟内服务器没有任何值?

时间:2019-01-29 05:09:22

标签: jquery html websocket

我有websocket客户端和服务器。我想从客户端(用于客户端的jQuery)检测机器是否空闲15秒(因为没有数据来自服务器)。如果没有数据要弹出,请再次检查15秒,依此类推。

我使用了'setTimeout'

setTimeout(function() {
    if (data == 0) {
        $('div#popup2').show()
    }
}, 15000);

但是只有当data == 1且机器处于空闲状态时,它们才会为0,这将触发。

1 个答案:

答案 0 :(得分:0)

您可以在其他情况下使用clearTimeout,如下所示。

var data = 0; // Change value to 1 if you want to see change. 
var tID;
$('#popup2').hide();
$('#popup1').hide();
if (data == 0)
  tID = setTimeout(function() {
    $("div#popup2").show()
  }, 1500);
else {
  clearTimeout(tID); // Else condition goes here whatever you want to do
  $("div#popup1").show();
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <div id='popup2'>Your Pop UP</div>
</div>
<div id='popup1'>Show Test Div</div>