ajax滾動(dòng)到底部時(shí)加載數(shù)據(jù)的原理和點(diǎn)擊加載更多是一樣的,上一篇已經(jīng)詳細(xì)介紹了,這里就不多說了。

一、如何觸發(fā)
//滾動(dòng)到底部時(shí)觸發(fā)
$(window).scroll(function() {
if($(window).scrollTop() + $(window).height() >= $(document).height()){
//ajax
}
})
二、重復(fù)加載數(shù)據(jù)問題
當(dāng)網(wǎng)頁滾動(dòng)到底部時(shí),加載一次數(shù)據(jù)。這時(shí),鼠標(biāo)滑輪往上滾然后再往下滾,會(huì)出現(xiàn)重復(fù)加載了同一頁數(shù)據(jù)的情況,這種情況下加載了不必要的數(shù)據(jù)資源以及增加了服務(wù)器加載壓力。這時(shí),我們可以這樣解決:
1、先建立一個(gè)變量,判定是否加載中,防止重復(fù)加載。
2、如果條件為true,鎖定加載,ajax調(diào)取數(shù)據(jù),并執(zhí)行加載,取消鎖定。
var isbool = true;//觸發(fā)開關(guān),防止多次調(diào)用事件
$(window).scroll(function() {
if (($(this).scrollTop() + $(window).height()) >= $(document).height() && isbool==true) {
isbool = false;
//ajax
}
});