Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 了解页面可见性API_Javascript_Jquery - Fatal编程技术网

Javascript 了解页面可见性API

Javascript 了解页面可见性API,javascript,jquery,Javascript,Jquery,我正在尝试实现一种功能,如果用户打开我们的应用程序,转到另一个选项卡并在30分钟后返回到我们的应用程序,我需要重新加载/刷新页面 我正在尝试使用页面可见性API&不时设置,如果差异大于30分钟,则重新加载页面 下面是一个示例代码(就问题而言,它更像是伪代码) 但我注意到,如果我复制了应用程序的页面(右键单击当前打开的选项卡并单击“复制”,再次打开同一页面),在复制的选项卡上不再触发visibilitychange事件 谁能建议一下,是应该这样做,还是我犯了一些错误 我正在Chrome 谢谢。你用

我正在尝试实现一种功能,如果用户打开我们的应用程序,转到另一个选项卡并在30分钟后返回到我们的应用程序,我需要重新加载/刷新页面

我正在尝试使用页面可见性API&不时设置,如果差异大于30分钟,则重新加载页面

下面是一个示例代码(就问题而言,它更像是伪代码)

但我注意到,如果我复制了应用程序的页面(右键单击当前打开的选项卡并单击“复制”,再次打开同一页面),
在复制的选项卡上不再触发visibilitychange事件

谁能建议一下,是应该这样做,还是我犯了一些错误

我正在
Chrome


谢谢。

你用什么浏览器来测试这个?我正在用Chrome进行测试
(function() {
  var lastRequest, currentRequest, seconds;
  document.addEventListener("visibilitychange", function() {
   console.log(document.hidden, document.visibilityState);
      if(document.visibilityState == true) {
        currentRequest = Date.now();
        seconds = parseInt((currentRequest-lastRequest)/1000);
        #if seconds greater than 1800 refresh the page 
      } else {
        lastRequest = Date.now();
      }
  }, false);
})();