Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 到达下午5点时自动显示弹出窗口,无需刷新(实时)_Javascript_Jquery_Html_Ajax_Cookies - Fatal编程技术网

Javascript 到达下午5点时自动显示弹出窗口,无需刷新(实时)

Javascript 到达下午5点时自动显示弹出窗口,无需刷新(实时),javascript,jquery,html,ajax,cookies,Javascript,Jquery,Html,Ajax,Cookies,我在网上搜索了结果,但没有找到任何正确的解决方案。 我希望我的页面在每天下午5:00前自动显示弹出窗口,而不刷新页面。 因此,如果我在下午4:50或5:00之前访问某个页面,一旦我仍在该页面上,它就会自动弹出一个div,而不会刷新该页面 我试着使用这段代码,但我必须在它工作之前刷新页面,这似乎没有效率 $(document).ready(function() { var currentTime = toUTC(new Date()); var start

我在网上搜索了结果,但没有找到任何正确的解决方案。 我希望我的页面在每天下午5:00前自动显示弹出窗口,而不刷新页面。 因此,如果我在下午4:50或5:00之前访问某个页面,一旦我仍在该页面上,它就会自动弹出一个div,而不会刷新该页面

我试着使用这段代码,但我必须在它工作之前刷新页面,这似乎没有效率

  $(document).ready(function() {      
      var currentTime = toUTC(new Date());

      var startTime = toUTC(new Date());
      var endTime = toUTC(new Date());

      startTime.setHours(20);
      startTime.setMinutes(10);
      startTime.setSeconds(59);
      endTime.setHours(20);
      endTime.setMinutes(0);
      endTime.setSeconds(0);

      var currentTimez = (currentTime.getHours() + 1);

      if (currentTimez == 20 && currentTime.getMinutes() == 20){
          popup();
      }
  });

  function popup() {
      alert("Thanks")
  }

  function toUTC(inDate) {
      inDate.setMinutes(inDate.getMinutes() + inDate.getTimezoneOffset());
      return inDate;
  }

我不介意我是必须点击数据库才能完成这项工作还是使用cookies。

你需要使用计时器

var current = new Date();
var fivePM = new Date(current.getYear(), current.getMonth(), current.getDayOfMonth());
fivePM.setHour(17);
if (current < fivePM) {
  var diff = fivePM.getTime() - current.getTime();
}
var timerID = setTimeout(popup, diff);
var current=新日期();
var fivePM=新日期(current.getYear()、current.getMonth()、current.getDayOfMonth());
下午五时整(17);
如果(当前<五分钟){
var diff=fivePM.getTime()-current.getTime();
}
var timerID=设置超时(弹出窗口,差异);

我对javascript不是很熟悉。这个完整的代码是否会每下午5点成功运行一次。?如有错误,请修改<代码>$(文档).ready(函数(){var current=new Date();var fivePM=new Date(当前.getYear(),当前.getMonth(),当前.getDayOfMonth());fivePM.setHour(23);if(当前