我想比较两个包含时间值的变量,但一个是在创建页面时产生的,另一个是从数据库中检索的。另外,我想创建一个计时器,该计时器在创建页面时启动,并在我们收到数据库时间时显示警报。
您建议在 jQuery 中执行这两项任务的解决方案是什么?
1) 如何使用 jQuery 获取数据库时间值?
2)如何创建一个在创建页面时启动的计时器?
我想比较两个包含时间值的变量,但一个是在创建页面时产生的,另一个是从数据库中检索的。另外,我想创建一个计时器,该计时器在创建页面时启动,并在我们收到数据库时间时显示警报。
您建议在 jQuery 中执行这两项任务的解决方案是什么?
1) 如何使用 jQuery 获取数据库时间值?
2)如何创建一个在创建页面时启动的计时器?
让我们做一些假设
首先,在合适的 HTML 容器中为您的页面提供数据库时间值:
<?php
//retrieve value from database here.
$dbTimeValue = ......;
?>
<body>
...
<input type="hidden" id="dbTimeValue" value="<?php echo $dbTimeValue ?>" />
...
</body>
然后,客户端,在 javascript 中:
$(function() {
var dbTimeVal = Number( $("#dbTimeValue").val() ) * 1000;//Unix timestamp converted to milliseconds
var timeNow = (new Date()).getTime();//time now (from client computer's motherboard) expressed in milliseconds since 1 Jan 1970
var timeOut = setTimeout(function() {
alert("Time now is later than database time");
}, timeNow - dbTimeVal);
});
注意:数据库时间值可以直接提供到 javascript 中,var dbTimeVal = <?php echo $dbTimeValue ?>;
但这对于菜鸟来说可能更令人困惑。