jQuery .remove()和最后一个孩子没有按预期工作

问题描述:

我有这段代码工作正常。新的数据进入正常,但当p的数量达到3时,没有任何反应。最后一个项目不会被删除,也不会添加新项目。jQuery .remove()和最后一个孩子没有按预期工作

任何想法?

setInterval(function() { 
       $.post(
       'json.php', 
       function(data){ 
        $('#tweetBox').append('<p>' + data + '</p>'); 
        var list = $('#tweetBox p').length; 
        if (list > 3){ 
         $('#tweetBox p:last-child').remove(); 
        }    
       } 
      ); 
     }, 5000); 

的最后一个项目不会被删除,没有新的项目将追加。

这表明新项目被追加但立即被删除。你想颠倒顺序:

var list = $('#tweetBox p').length; 
if (list === 3){ 
    $('#tweetBox p:last-child').remove(); 
} 
$('#tweetBox').append('<p>' + data + '</p>'); 
+0

真棒,谢谢 – benhowdle89 2011-05-02 15:46:04

$('#tweetBox p:gt(3)').remove();