来自服务器的 GMT 时间倒计时计数



我需要在倒计时计数器上为特定的未来日期时间工作。我设法使用以下计数器 http://www.blacktie.co/demo/counter/并在我几乎完成时对其进行了一些小的更改,我注意到此计数器使用本地系统日期,当我更改系统日期时,它会反映在计数器上。如何修改此脚本,使其在启动计数器而不是本地日期时从服务器获取 GMT 日期。

这样,每个用户无论身在何处,都可以看到甚至在印度发生的确切日期时间。

小提琴示例http://jsfiddle.net/635hf1je/1/

脚本

(function ($) {
    /**
     * Set your date here  (YEAR, MONTH (0 for January/11 for December), DAY, HOUR, MINUTE, SECOND)
     * according to the GMT+0 Timezone
     **/
    var launch = new Date(2014, 11, 04, 12, 00);
    /**
     * The script
     **/
    var message = $('#message');
    var days = $('#days');
    var hours = $('#hours');
    var minutes = $('#minutes');
    var seconds = $('#seconds');
    setDate();
    function setDate() {
        var now = new Date();
        if (launch < now) {
            days.html('<h1>0</H1><p>Day</p>');
            hours.html('<h1>0</h1><p>Hour</p>');
            minutes.html('<h1>0</h1><p>Minute</p>');
            seconds.html('<h1>0</h1><p>Second</p>');
            message.html('coming soon...');
        } else {
            var s = -now.getTimezoneOffset() * 60 + (launch.getTime() - now.getTime()) / 1000;
            var d = Math.floor(s / 86400);
            days.html('<h1>' + d + '</h1><p>Day' + (d > 1 ? 's' : ''), '</p>');
            s -= d * 86400;
            var h = Math.floor(s / 3600);
            hours.html('<h1>' + h + '</h1><p>Hour' + (h > 1 ? 's' : ''), '</p>');
            s -= h * 3600;
            var m = Math.floor(s / 60);
            minutes.html('<h1>' + m + '</h1><p>Minute' + (m > 1 ? 's' : ''), '</p>');
            s = Math.floor(s - m * 60);
            seconds.html('<h1>' + s + '</h1><p>Second' + (s > 1 ? 's' : ''), '</p>');
            setTimeout(setDate, 1000);
            message.html('coming soon...');
        }
    }
})(jQuery);

你在寻找这个:http://jsfiddle.net/lotusgodkk/635hf1je/2/吗?

只需将 Javascript Date 对象转换为 UTC。

var t = new Date(); 
var now = new Date(t.getUTCFullYear(), t.getUTCMonth(), t.getUTCDate(),  t.getUTCHours(), t.getUTCMinutes(), t.getUTCSeconds());

setDate()功能中。

您可以使用 php 来获取服务器时间:

var now = <?php echo date("Y-m-d H:i:s");// Format it as you need it ?>

相关内容

  • 没有找到相关文章

最新更新