我试图创建一个实时/动态时钟是基于我的自定义时间而不是系统时间。
有许多脚本,但我找不到时钟从我的自定义时间开始。
以下是我正在尝试修改的示例。问题是秒不会改变,看起来我需要使用ajax。没有ajax有没有办法做到这一点?如果没有,帮我用ajax做!我不喜欢ajax方法的原因是应该调用和刷新另一个页面,所以它会吃掉服务器ram。
离) http://www.javascriptkit.com/script/cut2.shtml
之前:
<script>
function show(){
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
...
...
之后:
<script>
function show(){
var Digital=new Date()
var hours=<?php echo $hr; ?>;
var minutes=<?php echo $min; ?>;
var seconds=<?php echo $sec; ?>;
...
...
答案 0 :(得分:1)
您的时钟不移动的原因是因为它使用的是服务器在最初呈现页面时设置的小时,分钟和秒值,而不是每次创建新的Date()
实例{{ 1}}被调用。您将希望利用JavaScript内置的show()
对象创建一个精确的时钟,因为Date
因其准确性而闻名,建立自己的时钟会很麻烦(成像不得不担心)关于飞跃多年和夏令时和东西!)。
我建议每次使用自定义时间与 real之间的差异调整setTimeout
时的时钟值时间。例如,如果您的自定义时间比实时时间晚30分钟,则可以调用:
show()
希望这有帮助!