微信小程序?qū)崿F(xiàn)移動端滑動分頁效果(ajax)
更新時間:2017年06月13日 16:38:36 作者:PHP急先鋒
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)移動端滑動分頁效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
一般在PC上我們要分頁都是通過上一頁和下一頁來實現(xiàn)的,手機(jī)通過當(dāng)下滑到一定程度的時候自動加載下一頁面。
實現(xiàn)思路:首先加載部分?jǐn)?shù)據(jù),當(dāng)下滑到某個元素可見的時候,如果還有數(shù)據(jù),則新發(fā)送請求,然后追加在當(dāng)前頁面。
/*
*<div class='topicBox' id='listBox'>
*</div>
*/
//判斷元素是否進(jìn)入可視區(qū)域
function see(objLiLast) {
//瀏覽器可視區(qū)域的高度
var see = document.documentElement.clientHeight;
//滾動條滑動的距離
var winScroll = $(this).scrollTop();
//距離瀏覽器頂部的
var lastLisee = $(objLiLast).offset().top;
return lastLisee < (see + winScroll) ? true : false;
}
//預(yù)設(shè)頁碼為當(dāng)前第一頁
var page = 1;
//獲得總頁碼
var pageTotal = parseInt($('#allpage').val());
//是否請求出AJAX的“開關(guān)”;
var onOff = true;
$(window).scroll(function () {
//拖動滾條時,是否發(fā)送AJAX的一個“開關(guān)”
$('.topicBox').each(function () {
//引用最后一個div
var lastLi = $('.topicBox:last');
//調(diào)用是否進(jìn)入可視區(qū)域函數(shù)
var isSee = see(lastLi);
if (isSee && onOff && page < pageTotal) {//最底部元素可見,開關(guān)開啟而且還有下拉
//$('#loadNext').show(); //顯示正在加載圖標(biāo)
onOff = false;
$.ajax({
url: '/GetPageData',
type: 'GET',
dataType: 'json',
data: {
page: page+1
},
asyc: false,
success: function (result) {
if (result.status == 'success') {
var data = result.result;
for (var i = 0; i < data.length; i++) {
//to do coding ...
};
}
//$('#loadNext').hide(); //隱藏正在加載
onOff = true;
page ++;
}
});
}
});
});
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript代碼實現(xiàn)左右上下自動晃動自動移動
最近幾天做了一個項目,原來是用css3動畫做的,由于不兼容IE,改成用js做了,特此分享給大家,供大家參考2016-04-04

