一般在PC上我們要分頁都是通過上一頁和下一頁來實現的,手機通過當下滑到一定程度的時候自動加載下一頁面。
實現思路:首先加載部分數據,當下滑到某個元素可見的時候,如果還有數據,則新發送請求,然后追加在當前頁面。
/**<div class='topicBox' id='listBox'>*</div>*/ //判斷元素是否進入可視區域 function see(objLiLast) { //瀏覽器可視區域的高度 var see = document.documentElement.clientHeight; //滾動條滑動的距離 var winScroll = $(this).scrollTop(); //距離瀏覽器頂部的 var lastLisee = $(objLiLast).offset().top; return lastLisee < (see + winScroll) ? true : false;}//預設頁碼為當前第一頁var page = 1;//獲得總頁碼var pageTotal = parseInt($('#allpage').val());//是否請求出AJAX的“開關”; var onOff = true;$(window).scroll(function () {//拖動滾條時,是否發送AJAX的一個“開關” $('.topicBox').each(function () {//引用最后一個div var lastLi = $('.topicBox:last');//調用是否進入可視區域函數 var isSee = see(lastLi);if (isSee && onOff && page < pageTotal) {//最底部元素可見,開關開啟而且還有下拉//$('#loadNext').show(); //顯示正在加載圖標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 ++;}});}});});
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答