javascript - Start calling js function when PC wakeup from sleep mode - Stack Overflow

In my aspx page, I use xmlhttp.response to update a part of this page. This update occurs in every 3 se

In my aspx page, I use xmlhttp.response to update a part of this page. This update occurs in every 3 seconds using js function. But when my PC goes to sleep mode, this update doesn't happen. This is OK. But when PC wake up from sleep mode, I need to start update automatically without reload this page. How to do this?

In my aspx page, I use xmlhttp.response to update a part of this page. This update occurs in every 3 seconds using js function. But when my PC goes to sleep mode, this update doesn't happen. This is OK. But when PC wake up from sleep mode, I need to start update automatically without reload this page. How to do this?

Share Improve this question edited Nov 12, 2020 at 10:16 Brian Tompsett - 汤莱恩 5,89372 gold badges61 silver badges133 bronze badges asked Jan 1, 2013 at 17:45 ShahriarShahriar 13.8k11 gold badges82 silver badges97 bronze badges 2
  • Duplicate of stackoverflow./questions/4079115/… – broofa Commented Jan 2, 2013 at 21:30
  • Does this answer your question? Can any desktop browsers detect when the puter resumes from sleep? – Brian Tompsett - 汤莱恩 Commented Nov 12, 2020 at 10:17
Add a ment  | 

1 Answer 1

Reset to default 6

You can detect disruptions in the JS timeline (e.g. laptop sleep, alert windows that block JS excecution, debugger statements that open the debugger) by paring change in wall time to expected timer delay. For example:

var SAMPLE_RATE = 3000; // 3 seconds
var lastSample = Date.now();
function sample() {
  if (Date.now() - lastSample >= SAMPLE_RATE * 2) {
    // Code here will only run if the timer is delayed by more 2X the sample rate
    // (e.g. if the laptop sleeps for more than 3-6 seconds)
  }
  lastSample = Date.now();
  setTimeout(sample, SAMPLE_RATE);
}

sample();

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745398372a4625985.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信