显示实时

时间:2011-04-18 14:27:30

标签: php javascript jquery

我目前正在使用PHP提供的日期功能在我的网页上显示日期/时间。 但是,使用此功能时,只有在重新加载页面时才会更新日期/时间。我希望每秒更新日期/时间。

我认为我必须使用javascript或jQuery / ajax,但是我不知道如何做到这一点。我希望这里有人能给我一些建议。

提前致谢。

6 个答案:

答案 0 :(得分:5)

这是我使用的(使用jQuery)

var updateClock = function() {
    function pad(n) {
        return (n < 10) ? '0' + n : n;
    }

    var now = new Date();
    var s = pad(now.getUTCHours()) + ':' +
            pad(now.getUTCMinutes()) + ':' +
            pad(now.getUTCSeconds());

    $('#clock').html(s);

    var delay = 1000 - (now % 1000);
    setTimeout(updateClock, delay);
};

这比仅使用1000ms定时器更准确,因为否则你会在时间上漂移。

答案 1 :(得分:2)

我建议你使用Date javascript对象来显示实时日期/时间

function Timer() {
   var dt=new Date()
   document.getElementById('time').innerHTML=dt.getHours()+":"+dt.getMinutes()+":"+dt.getSeconds();
   setTimeout("Timer()",1000);
}
Timer();

答案 2 :(得分:1)

您是否希望显示客户的时间或服务器的时间?您可以查看javascript以在您的网页上显示正在运行的时钟,但它只会显示用户的计算机时间。 PHP将显示服务器的时钟。

http://www.elated.com/res/File/articles/development/javascript/creating-a-javascript-clock/clock.html

或jQuery插件:http://plugins.jquery.com/project/jqClock

答案 3 :(得分:0)

jquery ajax

setTimeout(function(){
    $.ajax({
      url: "server.php",
      type:"post",
      success: function(data){
       $('#showtime').html(data);

      }
    });
),1000});

server.php

更新查询 //这里以方便的格式回显日期/时间

的HTML

<div id="showtime"></div>

REF http://api.jquery.com/jQuery.ajax/

答案 4 :(得分:0)

您需要使用JavaScript / jQuery。

我不建议使用Ajax并调用Web服务器来加载时间,因为这将是每个用户每秒的HTTP请求,这是很多流量。

在Javascript中执行此操作的教程如下: http://www.elated.com/articles/creating-a-javascript-clock/

(在Google上搜索“Javascript”时钟,有很多例子)。

答案 5 :(得分:0)

一种方法,它为您提供服务器时间,但没有每秒轮询是将时间戳传递给javascript(而不是格式化的时间),然后让javascript将其转换为格式化的日期,并使用setTimeout添加1秒邮票,你只需要每秒格式化新的时间戳。这为您提供了服务器时间,但没有昂贵的轮询。