[英]load content by ajax when scroll reach to bottom
我對此非常厭倦,直到現在我都沒有找到解決方案。這是我的代碼
$("#submit").click(function(e){
e.preventDefault()
var loading = "<img src='/zojfa/images/loading.gif' alt='Loading...' />";
var scrolltop=$('#scrollbox').attr('scrollTop');
var scrollheight=$('#scrollbox').attr('scrollHeight');
var windowheight=$('#scrollbox').attr('clientHeight');
var post = $(this).attr("name") + "=" + $(this).val();
var form_data = $('#search_form').serialize() + "&" + post;
var scrolloffset=20;
$('#search').html(loading);
$.post("dosearch.php",form_data,function(newitems) {
$('#content').append(newitems);
});
$('#scrollbox').scroll(function(){
if(scrolltop>=(scrollheight-(windowheight+scrolloffset))){
form_data = form_data + "&size=" + $("#content > div").size();
setTimeout($.post("dosearch.php",form_data,function(newitems) {
$('#content').append(newitems);
}),5000);
}
});
});
});
當我發布表單數據時,此表單數據將serialize()並發送到dosearch.php。
當我單擊“提交”按鈕時,該函數運行良好,函數將執行並給我結果集,即此腳本的第11行。
然后我將聽滾動事件,當滾動事件發生時,我將對內容div中的div進行計數,以了解到目前為止我已加載了多少個div,並將此數字發送給dosearch以獲取更多結果
從表中選擇某項,其中someid =另一些id LIMIT $ number(我是從div計數中得到的..還有另一種解決方案嗎?也許是為divs設置了id?這個解決方案我用的夠好嗎?),6
現在我的問題在哪里。我通過firebug檢查發布的數據
當我到達此div的底部時,許多ajax請求啟動。並在firebug控制台中顯示許多具有不同值的發布大小
size=6
size=12
size=12
我想過settimeout也許可以修復我的腳本,但在此方面沒有獲得成功。
我感謝您的幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.