Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.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 FlipClock-使用servertime而不是clienttime_Javascript_Php_Flipclock - Fatal编程技术网

Javascript FlipClock-使用servertime而不是clienttime

Javascript FlipClock-使用servertime而不是clienttime,javascript,php,flipclock,Javascript,Php,Flipclock,我想在7种不同的树莓酱上买一个eventmonitor。 他们都得到了一个装有挂钟的网页 我的问题是:RasPis上的时间不同。(他们无法获得实际的ptb时间,因为他们不允许连接到互联网) 这就是我如何称呼Flipclock的: <script type="text/javascript"> var clock = $('.clock').FlipClock({ clockFace: 'TwentyFourHourClock', showSeconds: false })

我想在7种不同的树莓酱上买一个eventmonitor。 他们都得到了一个装有挂钟的网页

我的问题是:RasPis上的时间不同。(他们无法获得实际的ptb时间,因为他们不允许连接到互联网)

这就是我如何称呼Flipclock的:

  <script type="text/javascript">
var clock = $('.clock').FlipClock({
  clockFace: 'TwentyFourHourClock',
  showSeconds: false
});
但我没法让它工作

我对这个很陌生,所以是的,如果有人知道如何解决它,请帮助我:(

编辑: 我的新电话是这样的:

     <div class="clock"></div>
  <script type="text/javascript">
   var serverTime = <?= time() ?>;
   var timeDifference = new Date - serverTime;
   var clock = $('.clock').FlipClock(timeDifference,{
      clockFace: 'TwentyFourHourClock',
      showSeconds: false
    });
  </script>

var serverTime=;
var timeDifference=新日期-服务器时间;
变量时钟=$('.clock')。翻转时钟(时差{
钟面:“二十四小时锁”,
showSeconds:错误
});

但这会让我的时钟变得奇怪,每次刷新都需要不同的时间。

Javascript只能在客户端(浏览器)上执行,因此它不能获取服务器时间。 因此,您必须呼叫服务器以获取日期。 一种方法是使用Ajax并调用一个只将servertime发送回的简单脚本

另一种方法是直接在脚本中实现Servertime。 如果使用PHP,则可以将类似的时间差发送到脚本:

<script>
   var serverTime = <?= time() ?>
   var timeDifference = new Date - serverTime;
</script>

var serverTime=
var timeDifference=新日期-服务器时间;
另一种方法是在其中一个树莓上设置一个NTP服务器,这样所有其他树莓都可以在引导时从他那里获得时间。 以下是您的解决方案:


玩得开心!

这条线索帮助了我……但我最终还是设法用另一种方式做到了,我认为这更简单:

var serverTime = '<?php echo Date('H:i:s'); ?>';
var clock = $('#clock').FlipClock(serverTime,{
  clockFace: 'TwentyFourHourClock',
});
var serverTime='';
变量时钟=$(“#时钟”)。FlipClock(服务器时间{
钟面:“二十四小时锁”,
});

如果我回显$servertime,我得到的值应该是
1453726200
=>@TimVermaelen
1453726371
那么当你查看源代码时,
var servertime=;
看起来像什么?你是否意识到你的服务器和用户的时间会在不同的时区,所以你的倒计时很可能是错的吗?在我的源代码中,它是这样的
var serverTime=1453726647;
它不是倒计时,它只是一个普通的时钟。所有设备都在同一时区。你的时间应该是newDate()+时差,我想谢谢分享!)
var serverTime = '<?php echo Date('H:i:s'); ?>';
var clock = $('#clock').FlipClock(serverTime,{
  clockFace: 'TwentyFourHourClock',
});