0

我正在尝试使用 mysql、php 和 javascript 创建一个倒数计时器。我试图使结束时间成为一个常数并存储在 mysql 服务器中,然后每秒通过 php 从 javascript 查询它。然后,我在 javascript 中获取当前时间,每秒使用 new Date() 函数。从结束时间中减去当前时间给了我剩下的时间。

但是,我的问题是,当在不同的设备上查看网站时,使用javascript查询的当前时间会以秒为单位,有时甚至是分钟...请帮我解决这个问题..提前谢谢。

这是我尝试过的。

setInterval(function() 
    {


    $.post('QueryTime.php', 'get=true', function(data,status) 
    {
        if(status)
            var endingtime = data;
        else
            alert("Server Error! Please refresh the page.");
    });

    endingtime = parseInt(endingtime);



    var now = new Date();
    now = now.getTime(); 
    var timeleft = (date - now)/1000;
},1000);
4

1 回答 1

0

您的意思是设备的实际本地时间会有所不同吗?通常是这种情况,更多的设备意味着更多的时间 :) 您可能想要的不是每次都必须new Date().getTime()获得时间,而是可能从每个设备的相同远程位置获取当前时间。

这个远程位置可以是您的服​​务器,它保存着我理解的结束时间或来自互联网的东西:

下面是一些通过 Javascript 中的 HTTP 请求获取 Unix 时间戳的代码:

var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", "http://currentmillis.com/api/millis-since-unix-epoch.php", false);
xmlHttp.send(null);
document.getElementById('info').innerHTML = xmlHttp.responseText;
<div id='info'></div>

于 2015-05-19T18:59:30.877 回答