Безкрайно превъртане за множество колони?

Имам един сайт с php/html страница, който се състои от 4 div колони. И четиримата изтеглят резултатите от техните специфични таблици в базата данни на 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.


person SpiritFly    schedule 03.11.2012    source източник
comment
Винаги ли всичките 4 колони ще бъдат с еднаква височина?   -  person Jules Copeland    schedule 04.11.2012
comment
Тъй като всички колони зареждат своите резултати от база данни, която е динамична (управлявана отделно чрез административен панел), броят на елементите вътре често ще се променя. Така че, не, те няма да са с еднаква височина.   -  person SpiritFly    schedule 04.11.2012
comment
@Jules Copeland какво ще стане, ако са с еднакъв ръст? Има ли решение за това, ако има?   -  person SpiritFly    schedule 04.11.2012


Отговори (1)


Бихте могли да го направите бързо и мръсно, като просто свържете събитието за превъртане към четири извиквания на Ajax, като използвате различни идентификатори, но това ще бъде много неефективно.

Особено ако проверява и четирите колони, дори когато знаете, че в едната е свършило новото съдържание.

В идеалния случай трябва да комбинирате всичките четири обаждания в едно, след което да разделите отговора по съответния начин.

Без да виждам повече код, не мога да помогна много, но това трябва да е отправна точка.

person Jules Copeland    schedule 04.11.2012
comment
Тъй като проектът ми беше прост и не зареди много резултати, направих го по бързия и мръсен начин, както предложихте. Извиках скрипта 4 пъти. Знам, че е неефективно, но нямам време да го пренапиша за едно обаждане. - person SpiritFly; 05.11.2012