2014-11-22 144 views
3

我使用ajax无限滚动评论系统。它可以正常工作,直到用户发布新评论为止 - 这打破了无限滚动,“加载更多项目”链接仍然存在,但点击它时没有任何反应。重置无限滚动与ajax内容

我已经看到了这个问题:Reset/disable infinite scroll after AJAX call

我试图实施摧毁,并绑定到我的成功方法,但loadmoreitems链接unreponsive。在用户使用下面的代码发表评论后,如何重置无限滚动?

AJAX:

<script> 
$(document).ready(function(){ 
$('#commentform').on('submit',function(e) { 

$.ajax({ 
    url:'ajaxrequest.php', 
    data:$(this).serialize(), 
    type:'POST', 
    dataType: 'HTML', 
    success:function(data, response){ 

ias.destroy(); 

$("#posts").fadeOut(300);  
$('#posts').html(data) 
$("#posts").fadeIn(500); 
$('html, body').animate({ scrollTop: $('#posts').offset().top - 100 }, 'fast'); 

ias.bind(); 

jQuery.ias({ 
    container: "#posts", 
    item: ".post", 
    pagination: "#pagination", 
    next: ".next a" 
}); 
    }, 
    error:function(data){ 
     $("#error").show().fadeOut(5000); 
    } 
    }); 

e.preventDefault(); 
return false; 

}); 
}); 
</script> 

回答

1

当初始化负载滚动确保你已经保存它在一个变量,名为IAS。事情是这样的

var ias = jQuery.ias({ 
    container: "#posts", 
    item: ".post", 
    pagination: "#pagination", 
    next: ".next a" 
}); 

而在成功的方法调用只是ias.destroy();ias.bind();方法,因为你已经做过的事情。

删除在代码再做初始化即

jQuery.ias({ 
    container: "#posts", 
    item: ".post", 
    pagination: "#pagination", 
    next: ".next a" 
});