javascript - 内容越多会减慢setTimeout吗?

标签 javascript php clock processing-efficiency

所以我一整天都在研究这个时钟,终于让它在我的沙箱页面上完美地工作。

由于沙箱页面上几乎没有任何内容,时钟运行得非常漂亮,但是当我将相同的代码添加到我的 index.php 上的时钟时,它会在时间和“NaN:NaN:”之间出现不稳定和闪烁。 NaN:am”。

所以我想知道页面上的内容越多,是否会导致页面“闪烁”?

<script language="javascript" type="text/javascript">

function clock(i){
var i =new Number(i);//Establish var type so math adds up
i=(i+1000);//Add a second to timestamp
setTimeout('clock("'+i+'")',1000)//Setup timer

var lastTick=new Date(i);//New timestamp applied to date function
var h=lastTick.getHours();
var m=lastTick.getMinutes();
var s=lastTick.getSeconds();
var diem="am";

//Some clean up to make it "clock-like"
if(m<10){m="0"+m;}
if(s<10){s="0"+s;}
if(h==0){h=12;}
if(h>12){h=h-12;diem="pm";}

//Setup string for clock and insert it to div
var clock=h+":"+m+":"+s+" "+diem;
$("#clock").text(clock);
}
</script>

<div id="clock"></div>
<script type="text/javascript">
    clock('<?php echo (time()*1000)?>');//Convert PHP timestamp to Javascript
</script>

我正在跨多个平台获取此内容。当我增加重复率(将 setTimeout 率降低到 100 毫秒)时,它看起来更好,但最终会出错并保持在有缺陷的状态。

我的最终目标是拥有一个显示服务器时间的时钟。我认为使用 ajax 来 ping 到服务器的时间只会让事情陷入困境,所以我认为从 PHP 时间戳开始的计时器会节省带宽。如果有更有效的方法来解决这个问题,我想知道。

最佳答案

没有PHP不受JavaScript影响

此代码可能会干扰您编写的其他 JavaScript 代码,检查您是否没有两次定义相同的变量

关于javascript - 内容越多会减慢setTimeout吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20725106/

相关文章:

javascript - 如何检查选择框中是否存在值

php - 如何使用 php 和 mysql 在表中插入新列?

php - 只有 php 没有 javascript

verilog - 时钟两侧沿触发信号

c++ - 为什么使用 clock() 在测量 CPU 时间时得到负数

javascript - 如何使用 javascript 作为事件文本显示 <img> 标签

javascript - 查找没有 ID 的元素

javascript - JS中如何将两个对象绑定(bind)到一个

php - 搜索二维数组并与 php 中的数据库进行比较

performance - 请求/响应的 Kafka 消息时间戳