1

我有一个由 4 个 div 列组成的 php/html 页面站点。他们四个都从 MySQL 数据库中的特定表中提取结果,而且都相当长。我决定采用无限滚动解决方案,但问题是我发现的所有脚本都指的是仅滚动一个附加结果的 div。

所以我想也许通过一些定制应该可以使它适用于多个列。我决定试一试:https ://github.com/tournasdim/PHP-infinite-scrolling 。我尝试过更改值并添加多个查询源,然后将它们附加到不同的 div,但我不太确定我应该如何处理。

这是来自 custom_jquery.js :

$.ajax({
dataType : "html" ,
url: "jquery-loadMoreComments.php?lastComment="+ $(".postedComment:last").attr('id') ,  
success: function(html) {
 doMouseWheel = 1 ; 
if(html){
$("#postedComments").append(html);
//console.log("Append html--------- " +$(".postedComment:first").attr('id'));
//console.log("Append html--------- " +$(".postedComment:last").attr('id'));
$("#last").remove();
$("#postedComments").append( "<p id='last'></p>" );
$('div#loadMoreComments').hide();
}else{      
$('div#loadMoreComments').replaceWith("<center><h1 style='color:red'>End of countries !!!!!!!</h1></center>");

你对如何处理这个有什么建议吗?

任何提供的见解将不胜感激!

此外,如果您知道另一个开箱即用效果更好或需要较少修改的脚本,我们也欢迎您。

我目前使用 CodeIgniter 从数据库中提取结果并将它们显示在页面上,但是因为它是一个简单的页面,所以我也可以不使用 CodeIgniter。

4

1 回答 1

2

只需将滚动事件绑定到四个 Ajax 调用,使用不同的 id,您就可以快速而肮脏地做到这一点,但这将非常低效。

尤其是当它检查所有四列时,即使您知道其中一列已用完新内容。

理想情况下,您应该将所有四个调用合并为一个,然后相应地拆分响应。

如果没有看到更多代码,我真的帮不上什么忙,但这应该是一个起点。

于 2012-11-04T21:36:52.180 回答