jQuery+ajax는 페이지 하단으로 스크롤할 때 그림과 텍스트 목록을 자동으로 로드하는 효과를 구현합니다(그림의 지연 로딩과 유사).
이 기사의 예에서는 페이지 하단으로 스크롤할 때 jQuery+ajax가 이미지와 텍스트 목록을 자동으로 로드하는 효과를 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>滚动到页面顶部加载</title> <script src="js/jquery-1.11.1.min.js" type="text/javascript"></script> <script src="js/endlesspage.js" type="text/javascript"></script> <style type="text/css"> .mainDiv { width: 800px; border: solid 1px #f00; padding: 10px; } .item { width: 600px; height: 50px; border: solid 1px #00ff90; font-size: 12px; margin: 10px; } .title { font-size: 16px; line-height: 20px; } .content { line-height: 14px; } .alink { display:none; } .loaddiv { display:none; } </style> </head> <body> <h1>滚动测试</h1> <div class="mainDiv"> <!--<div class="item"> <div class="title">title</div> <div class="content">content content content content content content content</div> </div> --> </div> <div class="loaddiv"> <img src="images/loading.gif" /> </div> <div> <a href="javascript:void(0);" id="btn_Page" class="alink">查看更多>>></a> </div> </body> </html>
로그인 후 복사
/*endlesspage.js*/ var gPageSize = 10; var i = 1; //设置当前页数,全局变量 $(function () { //根据页数读取数据 function getData(pagenumber) { i++; //页码自动增加,保证下次调用时为新的一页。 $.get("/ajax/Handler.ashx", { pagesize: gPageSize, pagenumber: pagenumber }, function (data) { if (data.length > 0) { var jsonObj = JSON.parse(data); insertDiv(jsonObj); } }); $.ajax({ type: "post", url: "/ajax/Handler.ashx", data: { pagesize: gPageSize, pagenumber: pagenumber }, dataType: "json", success: function (data) { $(".loaddiv").hide(); if (data.length > 0) { var jsonObj = JSON.parse(data); insertDiv(jsonObj); } }, beforeSend: function () { $(".loaddiv").show(); }, error: function () { $(".loaddiv").hide(); } }); } //初始化加载第一页数据 getData(1); //生成数据html,append到div中 function insertDiv(json) { var $mainDiv = $(".mainDiv"); var html = ''; for (var i = 0; i < json.length; i++) { html += '<div class="item">'; html += ' <div class="title">' + json[i].rowId + ' ' + json[i].D_Name + '</div>'; html += ' <div class="content">' + json[i].D_Name + ' ' + json[i].D_Password + '</div>'; html += '</div>'; } $mainDiv.append(html); } //==============核心代码============= var winH = $(window).height(); //页面可视区域高度 var scrollHandler = function () { var pageH = $(document.body).height(); var scrollT = $(window).scrollTop(); //滚动条top var aa = (pageH - winH - scrollT) / winH; if (aa < 0.02) {//0.02是个参数 if (i % 10 === 0) {//每10页做一次停顿! getData(i); $(window).unbind('scroll'); $("#btn_Page").show(); } else { getData(i); $("#btn_Page").hide(); } } } //定义鼠标滚动事件 $(window).scroll(scrollHandler); //==============核心代码============= //继续加载按钮事件 $("#btn_Page").click(function () { getData(i); $(window).scroll(scrollHandler); }); });
로그인 후 복사
<%@ WebHandler Language="C#" Class="Handler" %> using System; using System.Web; using System.Data; using MSCL; using Newtonsoft.Json; public class Handler : IHttpHandler { public void ProcessRequest(HttpContext context) { //核心处理程序 string pageSize = context.Request["pagesize"]; string pageIndex = context.Request["pagenumber"]; if (string.IsNullOrEmpty(pageSize) || string.IsNullOrEmpty(pageIndex)) { context.Response.Write(""); } else { //请结合实际自行取分页数据,可调用分页存储过程 MSCL.PageHelper p = new PageHelper(); p.CurrentPageIndex = Convert.ToInt32(pageIndex); p.FieldsName = "*"; p.KeyField = "d_id"; p.SortName = "d_id asc"; p.TableName = "testtable"; p.EndCondition = "count(*)"; p.PageSize = Convert.ToInt32(pageSize); DataTable dt = p.QueryPagination(); string json = JsonConvert.SerializeObject(dt, Formatting.Indented); context.Response.Write(json); } } public bool IsReusable { get { return false; } } }
로그인 후 복사
[ { "rowId": 1, "D_Id": 1, "D_Name": "名称1", "D_Password": "密码测试1", "D_Else": "其他1" }, { "rowId": 2, "D_Id": 2, "D_Name": "名称2", "D_Password": "密码测试2", "D_Else": "其他2" }, { "rowId": 3, "D_Id": 3, "D_Name": "名称3", "D_Password": "密码测试3", "D_Else": "其他3" }, { "rowId": 4, "D_Id": 4, "D_Name": "名称4", "D_Password": "密码测试4", "D_Else": "其他4" }, { "rowId": 5, "D_Id": 5, "D_Name": "名称5", "D_Password": "密码测试5", "D_Else": "其他5" }, { "rowId": 6, "D_Id": 6, "D_Name": "名称6", "D_Password": "密码测试6", "D_Else": "其他6" }, { "rowId": 7, "D_Id": 7, "D_Name": "名称7", "D_Password": "密码测试7", "D_Else": "其他7" }, { "rowId": 8, "D_Id": 8, "D_Name": "名称8", "D_Password": "密码测试8", "D_Else": "其他8" }, { "rowId": 9, "D_Id": 9, "D_Name": "名称9", "D_Password": "密码测试9", "D_Else": "其他9" }, { "rowId": 10, "D_Id": 10, "D_Name": "名称10", "D_Password": "密码测试10", "D_Else": "其他10" } ]
로그인 후 복사
이 기사가 jQuery 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.
페이지 하단으로 스크롤하여 이미지를 자동으로 로드하는 jQuery+ajax 구현 및 텍스트 목록 효과(이미지의 지연 로딩과 유사)에 대해서는 PHP 중국어 웹사이트에 주목하세요!
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
4 몇 주 전
By DDD
Windows 11 KB5054979의 새로운 기능 및 업데이트 문제를 해결하는 방법
3 몇 주 전
By DDD
Atomfall에서 크레인 제어 키 카드를 찾을 수 있습니다
4 몇 주 전
By DDD
<s> : 데드 레일 - 모든 도전을 완료하는 방법
1 몇 달 전
By DDD
Atomfall Guide : 항목 위치, 퀘스트 가이드 및 팁
1 몇 달 전
By DDD

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7698
15


자바 튜토리얼
1640
14


Cakephp 튜토리얼
1393
52


라라벨 튜토리얼
1287
25


PHP 튜토리얼
1229
29

