ajax實現向上正在加載,向上滾動或者向下滾動分頁異步加載數據(Ajax + lazyload)

/****

desc : 分頁異步獲取列表數據,頁面向上滾動時候加載前面頁碼,向下滾動時加載后面頁碼

ajaxdata_url ajax異步的URL 如data.php

page_val_name ajax異步的URL中的頁碼參數名 如pageno

page_no 初始加載頁碼,默認1 [如2,則與前面兩參數結合為data.php?pageno=2]

is_lazyload 是否開啟懶加載

page_count 總頁數

empty_msg 沒有數據的時候提示(可傳輸圖片)

ending_msg 最大頁碼顯示提示

***/$.fn.list_data= function(options) {//參數

var This = $(this);var flag = false;//flag為false時為初次加載,防止不斷加載

var defaults ={

ajaxdata_url:‘‘,

page_val_name:‘current‘,

page_no:1,

page_count:‘‘,

is_lazyload:true,

loading_msg:‘加載中...‘,

empty_msg:‘沒有相關數據!‘,

ending_msg:‘沒有更多數據了!‘};var opt =$.extend(defaults, options)//沒有數據的提示語

if (opt.page_count <= 0) {

This.html("

" + opt.empty_msg + "
");return true;

}//獲取頁碼,暫時不會用到

var get_return_page = function() {/*var url = location.href;

var page = ‘‘;

if (url.indexOf("#") > 0) {

var arr = url.split("#");

var pagestr = arr[1];

if (pagestr.indexOf("_") > 0) {

var arr2 = pagestr.split("_");

var page = arr2[0];

}

}

if (page == ‘‘ || page == undefined) {

return 1;

} else {

return page;

}*/

returnopt.page_no;

}//基礎參數

var page = get_return_page() * 1;var page_up =page;var page_down =page;//異步加載數據

var loadmore = function(page, pos) {var loading = "

" + opt.loading_msg + "
";

$.ajax({

type:"GET",

url: opt.ajaxdata_url+ "&" + opt.page_val_name + "=" +page,

beforeSend:function() {

$(".ajax-loading").remove();

$(".ui-no-msg").remove();if (pos == ‘before‘) {

$(loading).insertBefore(This);

}else{

$(loading).insertAfter(This);

}

$(".ajax-loading").show();

flag= true;

},

dataType:"html",

error:function() {//This.html("

數據異常,請刷新重試!
");

$("

數據異常,請刷新重試!
").appendTo(This);

$(".ajax-loading").remove();

},

success:function(content) {

flag= false;

content=$.parseHTML(content);if (pos == ‘before‘) {

$(content).prependTo(This);

}else{

$(content).appendTo(This);

}

$(".ajax-loading").remove();

$(".ui-no-msg").remove();//是否開啟懶加載

if (opt.is_lazyload == true) {

lazyLoadImgs(This);

}

}

});

}//懶加載

functionlazyLoadImgs(e) {

e.find("img").lazyload({

effect:"show",

event:"sporty"});var timeout = setTimeout(function () { e.find("img").trigger("sporty") }, 500);

}//初始加載

if (flag == false) {

loadmore(page,‘after‘);

$(window).scroll(function() {var scrollTop = $(this).scrollTop();var scrollHeight =$(document).height();var windowHeight = $(this).height();//滾動到頂部

if (scrollTop == 0) {if (page_up > 1) {

page_up--;

loadmore(page_up,‘before‘);//如不需要向上滾動加載,則注釋掉此行

}

}else{//滾動到底部

if (scrollTop + windowHeight >= (scrollHeight - 200)) {if (page_down

page_down++;

loadmore(page_down,‘after‘);

}else{

$(".ajax-ending").remove();

$("

" + opt.ending_msg + "
").appendTo(This);

$(".ajax-ending").delay(2000).hide();

}

}

}

});

}

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533084.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533084.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533084.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

js如何上傳大文件到服務器,js將文件上傳到遠程服務器

js將文件上傳到遠程服務器 內容精選換一換將文件上傳至Windows云服務器一般會采用MSTSC遠程桌面連接的方式。本節為您介紹本地Windows計算機通過遠程桌面連接&#xff0c;上傳文件至Windows云服務器的操作方法。Windows云服務器可以訪問公網。在本地Windows計算機上&#xff0c…

centos odbc mysql_Centos下安裝并配置ODBC連接MySQL 【轉】

找到一篇英文的關于Linux下ODBC的安裝和配置&#xff0c;在此根據自己的需要截取部分記錄一下。安裝并配置ODBCODBC連接器是一個數據庫抽象層&#xff0c;它可以讓Asterisk與廣泛的數據庫進行通信&#xff0c;而無需開發人員為Asterisk需要的每一個數據庫創建一個單獨的數據庫連…

增強服務器安全性能,加強Linux服務器安全的20項建議

很多人都說 Linux 在默認配置下很安全&#xff0c;我在一定程度上同意這個說法(很值得商榷的話題)。不過 Linux 內置的安全模型和工具做得確實很到位&#xff0c;用戶只需進行簡單的調整和自定義就可以加強 Linux 服務器安全。與惡意用戶做斗爭對于所有 Linux 系統管理員來說都…

mysql禁用歷史命令_如何禁止mysql記錄歷史命令

如何禁止mysql記錄歷史命令&#xff1f;在執行 SQL命令時&#xff0c;mysql會將歷史命令記錄到~/.mysql_history文件中&#xff0c;因此我們用上下鍵就可以翻閱歷史命令了。也許某些特殊需要我們可能需要不讓它記錄這些歷史命令&#xff0c;我們可以這樣作&#xff1a;[rootTes…

陰陽師師徒系統不同服務器,陰陽師體服師徒系統未收錄改為隨機SSR

昨天下午&#xff0c;受到很多爭議的體服“師徒系統”更新啦&#xff01;新版的“師徒系統”修改了徒弟的條件&#xff0c;總的來說能剔除壓級大佬&#xff0c;并且之前獎勵未收錄SSR降低為隨機SSR式神&#xff0c;難怪很多陰陽師都說&#xff1a;“大快人心&#xff01;”的確…

Mysql union聯合查詢_Mysql聯合查詢union和union all的使用介紹

一、UNION和UNION ALL的作用和語法UNION 用于合并兩個或多個 SELECT 語句的結果集&#xff0c;并消去表中任何重復行。UNION 內部的 SELECT 語句必須擁有相同數量的列&#xff0c;列也必須擁有相似的數據類型。同時&#xff0c;每條 SELECT 語句中的列的順序必須相同.SQL UNION…

ios 查看同文件名_實戰恢復cisco 2950交換機的IOS

本來想用兩臺思科交換機做實驗的&#xff0c;可是通過console口進入其中一臺交換機后卻發現這個臺交換機的IOS文件丟失了。本來正常進入交換機后應該是首先進入到用戶模式的&#xff0c;而且提示符應該是“>”&#xff0c;而現在提示符卻成了“&#xff1a;”&#xff0c;如…

repositoryitemlookupedit根據每行的id綁定數據_一種根據數據庫自增ID生成唯一ID的解決方案...

在我們的開發過程中&#xff0c;經常會遇到ID生成的問題&#xff0c;那么這里就介紹一種解決方案&#xff0c;注意這里只適合混淆ID規則&#xff0c;也就是說生成的ID沒有任何規則&#xff0c;不適用于訂單ID。一般有序自增主鍵的ID&#xff0c;極易被爬蟲抓取數據&#xff0c;…

bootstracp實現樹形列表_Java實現一致性哈希算法,并搭建環境測試其負載均衡特性...

實現負載均衡是后端領域一個重要的話題&#xff0c;一致性哈希算法是實現服務器負載均衡的方法之一&#xff0c;你很可能已在一些遠程服務框架中使用過它。下面我們嘗試一下自己實現一致性哈希算法。一. 簡述一致性哈希算法這里不詳細介紹一致性哈希算法的起源了&#xff0c;網…

c# mysql數據庫查詢語句_C# mysql 查詢

展開全部|mysql> select * from test_book1;-------------------------------------------------|e68a84e8a2ad3231313335323631343130323136353331333335303534 id | name | data |-------------------------------------------------| …

系統分析師和系統架構設計師難度比較_系統架構設計師,馬上開課了!

一年只考一次的系統架構設計師7月7日通關指南開課系統架構設計師考試&#xff0c;是2009年11月計算機資格考試新增專業&#xff0c;這個級別屬于高級資格考試。與該考試同級別的還有系統分析師、信息系統項目管理師、系統規劃與管理師以及網絡規劃設計師。系統架構設計師每年考…

運維人員mysql如何訪問_mysql 運維常見操作

MySQL密碼的恢復方法之一1&#xff0e;首先確認服務器出于安全的狀態&#xff0c;也就是沒有人能夠任意地連接MySQL數據庫。 因為在重新設置MySQL的root密碼的期間&#xff0c;MySQL數據庫完全出于沒有密碼保護的 狀態下&#xff0c;其他的用戶也可以任意地登錄和修改MySQL的信…

mocha 測試 mysql_node項目mocha自動化測試的疑問

測試框架&#xff1a;mocha數據庫&#xff1a;mysql和mongodb疑問1. 如何控制多個測試用例的運行順序&#xff1f;用例寫多了&#xff0c;A用例把數據變成了狀態1&#xff0c;有些后面的用例基于這個狀態1的數據進行查詢判斷&#xff0c;才能使得后面的用例正常運行&#xff0c…

pythonhelloworld實例_Python基于Tkinter的HelloWorld入門實例

本文實例講述了Python基于Tkinter的HelloWorld入門實例。分享給大家供大家參考。具體分析如下&#xff1a;初學Python&#xff0c;打算做幾個Tkinter的應用來提高。剛學的HelloWorld&#xff0c;秀一下。我用Python3.2的&#xff0c;Windows版本的。源代碼如下&#xff1a; #導…

tensorflow提取mel譜特征_【腦電信號分類】腦電信號提取PSD功率譜密度特征

點擊上面"腦機接口社區"關注我們更多技術干貨第一時間送達本文是由CSDN用戶[frostime]授權分享。主要介紹了腦電信號提取PSD功率譜密度特征&#xff0c;包括&#xff1a;功率譜密度理論基礎、matlab中PSD函數的使用介紹以及實驗示例。感謝 frostime&#xff01;1. 序…

mysql用戶可以localhost登陸_【單選題】登陸MySQL服務器,默認的用戶名為 A. user B. pwd C. root D. localhost...

功能清利濕熱、利膽退黃的藥物是A、茵陳蒿B、豬苓C、澤瀉D、滑石E、關木通舌尖上對酸味特別敏感的部位是_____。EDI的中文名稱是什么&#xff1f;什么維生素能促進血液的凝固&#xff1f;當輸油噴射泵故障時&#xff0c;Ⅱ組油箱是如何向Ⅲ組油箱供油的&#xff1f;A.通過溢油口…

從mysql中取出代理ip_GitHub - lican09/IPProxyTool: 抓取大量免費代理 ip,提取有效 ip 使用...

IPProxyTool使用 scrapy 爬蟲抓取代理網站&#xff0c;獲取大量的免費代理 ip。過濾出所有可用的 ip&#xff0c;存入數據庫以備使用。可以訪問我的個人站點&#xff0c;查看我的更多有趣項目 awolfly9個人項目歡迎加微信吐槽如果在使用中有任何疑問&#xff0c;或者項目中有任…

docker卸載 windows版本_DevOps系列 006 - Docker安裝

這是DevOps系列的第六節&#xff0c;我們開始安裝DockerDebian 上安裝可以基于最新debian10的發行版&#xff0c;我現在還用著debian9&#xff0c;不過隨后&#xff0c;我會發出Windows / macOs / Ubuntu的參考。安裝如果您已經是root用戶&#xff0c;則無需使用sudo1、卸載任何…

mysql設置success信息_【原創】MySQL Cluster安裝部署(Success)

參考&#xff1a;http://www.cnblogs.com/zhoulf/archive/2013/01/30/2883207.html安裝要求安裝環境&#xff1a;centos6.3(X64)軟件名稱 &#xff1a;mysql-cluster-gpl-7.3.8-linux-glibc2.5-x86_64.tar.gz (通用版)管理節點IP:10.61.5.51數據節點-SQL節點IP:10.61.5.52數據節…

tab vue 豎排_vue 實現tab切換保持數據狀態

頁面做tab切換&#xff0c;由于組件每一次切換都會重新實例化組件&#xff0c;我們想要頁面不論怎么切換都仍然保持tab里面的內容不會刷新&#xff0c;減少頁面重新渲染以及減少請求實現方法&#xff1a;使用包裹組件 列表頁面跳轉詳情 &#xff0c;列表頁面保持上一次操作狀態…