Php 如何使用JS客户端更新时间

Php 如何使用JS客户端更新时间,php,javascript,Php,Javascript,我想更新页面上记录li或divs上显示的时间。 我将创建此记录的时间与每条记录一起放在一个隐藏字段中 例如: # Hi what are you doing? 5 minute ago. <hidden id='1' value='1345888475'> # Akon song is good 10 minute ago <hidden id='2' value='1345888855'> # I love the way you lie 15

我想更新页面上记录li或divs上显示的时间。 我将创建此记录的时间与每条记录一起放在一个隐藏字段中

例如:

# Hi what are you doing? 
  5 minute ago.  <hidden id='1' value='1345888475'>

# Akon song is good 
  10 minute ago  <hidden id='2' value='1345888855'>

# I love the way you lie
  15 minute ago <hidden id='3' value='1345889995'>
你好,你在干什么? 5分钟前。 #阿康的歌很好 10分钟前 #我喜欢你撒谎的方式 15分钟前 如何每分钟更新该时间?所以一分钟后第一个div应该说是6分钟前 第二个是11分钟前

使用JS是否可以实现这一点。我不想为了这个去php。只是使用JS。 以DB为单位的时间存储方式类似于STROTOTIME(日期(“Y-m-d H:i:s”)

谢谢大家!

您可以尝试使用它,它是一个功能强大且非常轻量级的库,用于Javascript中与时间管理相关的所有内容。该API非常清晰,文档丰富,功能强大。 我正在我的一个项目中使用它,到目前为止我非常满意

您可以使用时间自动更新处理程序,这正是您想要的,非常容易地使用以下示例:

时刻(“20111031”,“yyyyymmdd”)。从现在开始();//一年前

时刻(“20120620”,“yyyyymmdd”)。从现在开始()6个月前

时刻().startOf('day').fromNow();//19小时前

力矩().endOf('day').fromNow();//5小时后

要使时间自动刷新,您可以使用
setInterval
处理程序调用这些函数。

您可以尝试使用它,这是一个非常完善且非常轻量级的库,用于Javascript中与时间管理相关的所有内容。该API非常清晰,文档丰富,功能强大。 我正在我的一个项目中使用它,到目前为止我非常满意

您可以使用时间自动更新处理程序,这正是您想要的,非常容易地使用以下示例:

时刻(“20111031”,“yyyyymmdd”)。从现在开始();//一年前

时刻(“20120620”,“yyyyymmdd”)。从现在开始()6个月前

时刻().startOf('day').fromNow();//19小时前

力矩().endOf('day').fromNow();//5小时后


要使时间自动刷新,可以使用
setInterval
处理程序调用这些函数。

我个人会使用如下HTML:

<span data-time="1345888475">Loading...</span>
正在加载。。。
然后在脚本中有如下内容:

(function() {
  var timetostring(secs) {
      if( secs < 60) return secs+" seconds ago";
      secs = Math.floor(secs/60);
      if( secs < 60) return secs+" minutes ago";
      secs = Math.floor(secs/60);
      if( secs < 24) return secs+" hours ago";
      secs = Math.floor(secs/24);
      return secs+" days"; // you can of course continue
  };
  (function() {
      var qsa = document.querySelectorAll("[data-time]"), l = qsa.length, i, t;
      for(i=0; i<l; i++) {
          t = new Date().getTime()/1000-qsa[i].getAttribute("data-time");
          qsa[i].firstChild.nodeValue = timetostring(t);
      }
      setTimeout(arguments.callee,15000);
  });
})();
(函数(){
var timetostring(秒){
如果(秒<60)返回秒+“秒前”;
秒=数学楼层(秒/60);
如果(秒<60)返回秒+“分钟前”;
秒=数学楼层(秒/60);
如果(秒<24)返回秒+“小时前”;
秒=数学楼层(秒/24);
return secs+“days”;//当然可以继续
};
(功能(){
var qsa=document.queryselectoral(“[数据时间]”),l=qsa.length,i,t;

对于(i=0;i个人而言,我会像这样使用HTML:

<span data-time="1345888475">Loading...</span>
正在加载。。。
然后在脚本中有如下内容:

(function() {
  var timetostring(secs) {
      if( secs < 60) return secs+" seconds ago";
      secs = Math.floor(secs/60);
      if( secs < 60) return secs+" minutes ago";
      secs = Math.floor(secs/60);
      if( secs < 24) return secs+" hours ago";
      secs = Math.floor(secs/24);
      return secs+" days"; // you can of course continue
  };
  (function() {
      var qsa = document.querySelectorAll("[data-time]"), l = qsa.length, i, t;
      for(i=0; i<l; i++) {
          t = new Date().getTime()/1000-qsa[i].getAttribute("data-time");
          qsa[i].firstChild.nodeValue = timetostring(t);
      }
      setTimeout(arguments.callee,15000);
  });
})();
(函数(){
var timetostring(秒){
如果(秒<60)返回秒+“秒前”;
秒=数学楼层(秒/60);
如果(秒<60)返回秒+“分钟前”;
秒=数学楼层(秒/60);
如果(秒<24)返回秒+“小时前”;
秒=数学楼层(秒/24);
return secs+“days”;//当然可以继续
};
(功能(){
var qsa=document.queryselectoral(“[数据时间]”),l=qsa.length,i,t;

对于(i=0;i您可以在JS中执行此操作,您需要几个部分:

  • 确定需要更改的零件,并为其提供创建时间
  • 一个每分钟更新时间的计时器,需要php告诉js它的时间
  • 在页面加载时将时间转换为可读文本的脚本
  • 
    #嗨,你在干什么?
    5分钟前。 var currentTime=; var timestampHandler=setInterval(onUpdateTimestamp,60*1000);//一分钟 函数onUpdateTimestamp(){ 电流时间+=60; $(“.message”)。每个(updateTimeAgo); } 函数updateTimeAgo(){ var$el=$(本); var postTime=parseInt($el.data('timestamp')); var newTimeAgo=(currentTime-postTime)/60;//分钟 $el.find(“.timeAgo”).html(newTimeAgo+“mint ago.”) }
    您可以在JS中执行此操作,您需要几个部分:

  • 确定需要更改的零件,并为其提供创建时间
  • 一个每分钟更新时间的计时器,需要php告诉js它的时间
  • 在页面加载时将时间转换为可读文本的脚本
  • 
    #嗨,你在干什么?
    5分钟前。 var currentTime=; var timestampHandler=setInterval(onUpdateTimestamp,60*1000);//一分钟 函数onUpdateTimestamp(){ 电流时间+=60; $(“.message”)。每个(updateTimeAgo); } 函数updateTimeAgo(){ var$el=$(本); var postTime=parseInt($el.data('timestamp')); var newTimeAgo=(currentTime-postTime)/60;//分钟 $el.find(“.timeAgo”).html(newTimeAgo+“mint ago.”) }
    你是说分钟,对吗?@TomWalters显然不是,他一边编程一边做饭,他需要新鲜的东西吃。该死,现在如果我去把所有的“薄荷糖”编辑成“分钟”为了澄清这个问题,它将破坏这条评论线索。我冒着被禁止的风险,但我不得不在那里贴上一个新标签……薄荷薄荷是唇形科开花植物的一个属。物种不清楚,估计物种数量从13到18不等。一些物种之间的杂交是自然发生的一分钟对吗?@TomWalters显然不是,他一边编程一边做饭,他需要新鲜的东西吃。该死,现在如果我去把所有的“薄荷糖”编辑成“分钟”为了澄清这个问题,它将破坏这条评论线索。我冒着被禁止的风险,但我不得不在那里贴上一个新标签……薄荷薄荷是唇形科开花植物的一个属。该物种不清楚,估计