想知道在Jquery中如何检查当前日期和时间。
使用JavaScript,您可以使用Date对象获取当前日期和时间;
var now = new Date();
如果您想进行时区调整或从服务器获取时间,请查看此问题中我的答案。这将获取本地客户端机器时间。
编辑:根据您的评论,您可以非常容易地将服务器时间检索到客户端:
time.php:
<? echo '{serverTime: new Date(' . time()*1000 .')}';?>
创建一个简单的JSON字符串,其中包含一个以当前服务器时间初始化的新Date对象,因为PHP处理时间戳是以秒为单位的,而JavaScript是以毫秒为单位的,所以该值乘以1000。
在另一端,您可以像这样获取服务器时间:
$.getJSON('time.php', function (data) {
alert(data.serverTime);
});
只需使用getJSON请求从time.php检索日期,并访问返回对象的serverTime属性。
从客户端获取当前日期和时间不是一个好的做法。
将此检查转换为服务器端检查。
您可以使用jQuery向一个页面发出Ajax请求,然后返回当前日期和时间。
获取当前日期不是必须使用jquery(即使它有这个功能),因为原始javascript提供了这个功能。
var currentTimeAndDate = new Date();
除非特殊情况,否则应避免从客户端机器获取当前时间/日期,因为您无法知道他们的时钟是否设置正确。始终从服务器获取时间日期以提供某种程度的可预测性。然而,这也不是完美的,因为客户端可能真的比服务器快一天或慢一天,所以您需要决定如何以适合您的应用程序的方式处理这种情况。
更新:
还需要区分静态和动态获取日期/时间。
静态是指服务器直接将时间/日期呈现在页面中 - 例如,您可能希望显示“此页面在1962年7月24日GMT 12:34生成”(这将是一个巧妙的技巧,考虑到web服务器在1962年并不存在)。
动态是指客户端页面通过使用AJAX调用向服务器请求当前时间来主动更新时间显示 - 这是由@CMS提供的响应中描述的方法。