使用setInterval()每30秒更新一次时间戳

flo*_*eft 0 javascript jquery setinterval

我有一个像这样的帖子列表:

<ul>
    <li>
       <p class="post" id="432">This is a post</p>
       <p class="timestamp">5 minutes ago</p>
    </li>
    <li>
       <p class="post" id="589">This is another post on the site</p>
       <p class="timestamp">1 hour ago</p>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我想每30秒更新一次时间戳(很像facebook时间戳)setInterval().

function update_timestamps(){


    $('.timestamp').ajax({
        type    : 'POST', 
        url     : '/ajax/refresh_timestamp', 
        data    : { 'post_id' : $(this).closest('li').find('p.post').attr('id') },          
        success : function(data){ 
            $(this).html(data);
        }
    });

}

setInterval(update_timestamps(), 30000);
Run Code Online (Sandbox Code Playgroud)

我的.ajax()函数显然有问题,或者我根本不应该使用ajax()?

nav*_*een 6

如果你想只在"时间之前"显示为什么要使用ajax?
只需使用此插件,timeago