3

我有一个 div “内容”,在这个 div 中我有几个 div “评论”,我每 5 秒重新加载一次 div “内容”,我想淡入每个新评论。为此,每条评论都有一个整数,所以基本上我正在做的是:我将最后一条评论的 id 保存在变量“lastComment”中,当我重新加载 div“内容” ,我正在使用 if($(".comment").attr(id) > lastComment) { alert('ok') }

但它不起作用,首先它重新加载 div,而不是直接说“好的”,我需要再等 5 秒钟,这里是我的代码:

var lastComment = $('.comment:last').attr('id');
setInterval(function()
{
    $('#content').load('fullscreen.php?image='+$('.imageBig').attr('id')+' #content');
    if($('.comment').attr('id') > lastComment){
        alert('ok');
    }
}, 5000);

请问有什么想法吗?

4

1 回答 1

1

我认为有你的jQuery selector问题,在 if 条件下你应该指定 lastdiv.comment因为var lastComment = $('.comment:last').attr('id');语句将在此工作后分配最后一个元素,setInterval并且新的最后一个 div 注释将更改,因此警报不起作用。

var lastComment = $('.comment:last').attr('id');
setInterval(function()
{
    $('#content').load('fullscreen.php?image='+$('.imageBig').attr('id'),function(){
        if($('.comment:last').attr('id') > lastComment){
            alert('ok');
        }
    });

}, 5000);
于 2013-02-07T09:40:46.067 回答