编程语言
首页 > 编程语言> > javascript – 如何使用jQuery timeago进行实时更新?

javascript – 如何使用jQuery timeago进行实时更新?

作者:互联网

我有一个值011-04-29T14:55:33.000Z这个值被推入jQuery模板.我使用timeago将日期转换为已用时间,但在写入模板后,随着时间的推移,它无法更新.

我将如何实现自动更新的内容?

解决方法:

假设你从这开始(从timeago主页):

<abbr class="timeago" title="2008-07-17T09:24:17Z">July 17, 2008</abbr>

现在,timeago插件将在重写内容时更改标题.您需要做的就是跟踪其他地方的时间戳,将其放回title属性,然后重新运行插件.像这样的东西:

<abbr
    class="timeago"
    title="2008-07-17T09:24:17Z"
    data-ts="2008-07-17T09:24:17Z"
>July 17, 2008</abbr>

会变成这样的:

<abbr
    class="timeago"
    title="July 17, 2008"
    data-ts="2008-07-17T09:24:17Z"
>2 years ago</abbr>

当你想要更新它时,只需将data-ts放回标题并重新运行插件:

$('.timeago').each(function() {
    var $this = $(this);
    $this.attr('title', $this.data('ts'));
}).timeago();

如果您使用的是较旧的jQuery,则可能需要使用$this.attr(‘data-ts’)代替$this.data(‘ts’).

标签:jquery,javascript,timeago
来源: https://codeday.me/bug/20190614/1237344.html