不想分页怎么办??-->页面数据的滚动加载
在前几天的一次前台数据展示的时候
为了更好的用户的体验
就想着做一个数据的滚动加载功能
于是简单的查询了网上的实现方式
基本都是在页面加载的时候绑定scroll事件
然后判断页面触底的时候
进行ajax请求获取数据
然后将数据追加到数据展示层的div后面
于是也找了几个demo看了看
决定自己动手把这个功能实现
直接看代码吧
代码中注释也很详细:
$(document).ready(function(){
//页面加载的时候绑定触底滚动加载事件
$(window).bind('scroll',function(){show()});
function show() {
//获取页面首次加载时设置在隐藏文本框中的当前页的值
//在页面会有两个隐藏的文本框
//<input type="hidden" id="currentPage" value="${currentPage }"> 当前页
//<input type="hidden" id="totalPage" value="${totalPage }"> 进入该页面的时候把总页数放到该隐藏域中
var currentPage = $('#currentPage').val();
//获取页面首次加载时设置在隐藏文本框中的总页数值
var totalPage = $('#totalPage').val();
//如果当前页小于总页数 就进入判断
if(currentPage <= totalPage) {
//判断页面是否已经触底 如果触底就调用ajaxRead()方法来进行下一页数据的加载 并将当前页和总页数传过去
if($(window).scrollTop()+$(window).height()>=$(document).height()) {
ajaxRead(currentPage, totalPage);
}
} else {
//取消绑定scroll滚动事件
$(window).unbind('scroll');
//如果数据加载完毕 在blog-main Div后面追加提示语
$('#blog-main').append("<div style='text-align: center;'><h3>拼命更新数据中。。。。。。</h3></div>");
}
}
function ajaxRead(currentPage, totalPage) {
var html= "";
$.ajax({
type:'get',
url:'portal/scrollLoad',
data:{currentPage: currentPage,totalPage:totalPage},
success: function(data){
//获取后台传过来的年鉴列表
var list = eval(data.yearBookJson);
//遍历年鉴列表数据
for (var i = 0; i < list.length; i++) {
html = "<div class='col-md-4 col-sm-4'><article class='blog-teaser'><header>";
html = html + "<img style='width: 326px;height: 135px;' src='<%=basePath%>uploadFiles/uploadImgs/";
html = html + list[i].YEARBOOK+"' alt="+list[i].YEARBOOKNAME;
html = html + "'><h3><a href='portal/nianjiandetail?YEARBOOK_ID="+list[i].YEARBOOK_ID;
html = html + "'>"+list[i].YEARBOOKNAME;
html = html + "</a></h3><hr></header></article></div>";
//在yearBookBox Div后追加拼接的HTML代码
$('#yearBookBox').append(html);
}
//隐藏文本框中的当前页的值
var ajaxchange = $('#currentPage').val();
//本次加载完后隐藏文本框里的当前页的值需要加1 为下一次调用准备
$('#currentPage').val(parseInt(ajaxchange)+1);
}
});
}
});
js的代码就这么多,后台业务代码就不展示了,ajax请求成功后解析返回的数据即可。祝好运
不想分页怎么办??-->页面数据的滚动加载的更多相关文章
- h5页面列表滚动加载数据
h5列表滚动加载数据很常见,以下分享下今天做的案例: 前言 这个效果实现需要知道三个参数 1. scrollTop -- 滚动条距离顶部的高度 2. scrollHeight -- 当前页面的总高度( ...
- 滚动加载|页面滑到底部加载数据|jquery.endless-scroll插件|使用demo
<html> <head> <link rel="dns-prefetch" href="http://i.tq121.com.cn&quo ...
- 页面滚动动态加载数据,页面下拉自动加载内容 jquery
<!DOCTYPE=html> <html> <head> < script src="js/jquery.js" type=" ...
- Jquery页面滚动动态加载数据,页面下拉自动加载内容
<!DOCTYPE=html> <html> <head> <script src="js/jquery.js" type="t ...
- infinite-scroll插件无限滚动加载数据的使用
网上对于infinite-scroll插件使用的例子不多.但由于它的出现,鼓吹了瀑布流形式的页面展示方式,所以不得不了解了解这种新的分页方式. 官网上有对infinite-scroll的详细描述,但一 ...
- vue2.0无限滚动加载数据插件
做vue项目用到下拉滚动加载数据功能,由于选的UI库(element)没有这个组件,就用Vue-infinite-loading 这个插件代替,使用中遇到的一些问题及使用方法,总结作记录! 安装: ...
- 潭州课堂25班:Ph201805201 django 项目 第二十二课 文章主页 新闻列表页面滚动加载,轮播图后台实现 (课堂笔记)
新建static/js/news/index.js文件 ,主要用于向后台发送请求, // 新建static/js/news/index.js文件 $(function () { // 新闻列表功能 l ...
- 【无限滚动加载数据】—infinite-scroll插件的使用
网上对于infinite-scroll插件使用的例子不多.但由于它的出现,鼓吹了瀑布流形式的页面展示方式,所以不得不了解了解这种新的分页方式. 官网上有对infinite-scroll的详细描述,但一 ...
- HTML5商城开发一 楼层滚动加载数据
对于楼层加载在以前只是个想法,从来没实现过,刚好项目中碰到,再此总结一下 场景:HTML5,局部商品列表信息滚动(局部滚动条) 1.通过jq设置subCategoryScroll的高度为屏幕显示高度( ...
随机推荐
- 响应式布局框架 Pure-CSS 5.0 示例中文版-上
0. Pure-CSS 介绍 Pure CSS 是雅虎出品的 CSS 框架, 依托于Normalize.CSS,在不适用任何JS代码情况下即可实现响应式布局的轻量级框架,无依赖,体积小. 1. CDN ...
- IOS委托,实现两个UIView相互传值
转自:http://my.oschina.net/wbei/blog/89325 detegate委托在IOS中是一种随处可见的模式,通俗的说,就是我把想做的某件事委托给其他人去做,就好像Java中的 ...
- linux 清内存
注意:首先我们需要使用sync指令,将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node.已延迟的块 I/O 和读写映射文件.否则在释放缓存的过程中,可能会丢失未保存的文件. 的值可以为0~3 ...
- 17. Subsets【medium】
Given a set of distinct integers, return all possible subsets. Notice Elements in a subset must be i ...
- 利用css3背景位置完成拼图
.duo { width: 623px; height: 417px; margin: 100px auto; background: url(images/bg1.png) left top no- ...
- 拿与不拿的dfs
在n个物品中拿k个,使得花费恰好为m. 典型的dfs,对每一个物品,可以选择拿与不拿,然后在判断下一个物品. 失败的dfs: 代码没有保存,只重写一下dfs函数的关键部分: ;i<n;i++) ...
- Odoo 8.0 new API 之model 装饰
model装饰器的作用是返回一个集合列表 应用举例: 定义columns langs = fields.Selection(string="Lang",selection=&quo ...
- fastjson常用操作
一. fastjson生成json字符串(JavaBean,List<JavaBean>,List<String>,List<Map<String,Object&g ...
- 70个shell经常使用操作
1) 怎样向脚本传递參数 ? ./script argument 样例: 显示文件名脚本 ./show.sh file1.txt cat show.sh #!/bin/bash echo $1 2) ...
- word 操作教程
http://blog.163.com/haolongqin@126/blog/static/10999842220159993540527/ https://blog.csdn.net/ibigpi ...