上拉数据加载

上拉数据加载

最近项目中需要对大量数据进行处理,鉴于项目是移动端项目,就采用类似于懒加载的上拉加载进行数据处理。

网上也找了很多插件,最后感觉挺繁琐,干脆自己走了一个简单的逻辑进行处理,话不多说,贴代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>上拉加载数据测试</title>
    <meta name="viewport" content="width=device-width">
    <style>
        .cont p{
            height: 200px;
            line-height: 200px;
            font-size: 26px;
            text-align: center;
            width: 100%;
            border-bottom: 1px solid #ddd;
        }
    </style>
</head>
<body>
<div class="cont">
    <p>第1页</p>
    <p>第2页</p>
    <p>第3页</p>
    <p>第4页</p>
    <p>第5页</p>
    <p>第6页</p>
    <p>第7页</p>
    <p>第8页</p>
    <p>第9页</p>
    <p>第10页</p>
</div>
</body>
<script src="js/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
    loadData();
    function loadData(){
        var range = 50,maxpage = 5,page = 1,totalHeight=0;
        $(window).scroll(function(){
            var scrollHeight = $(window).scrollTop();//页面卷起的高度
            totalHeight = parseFloat($(window).height())+parseFloat(scrollHeight);//页面文档高度+页面卷起的高度页面卷起的高度
            if(($(document).height()-range) <= totalHeight && page != maxpage){
                $(‘.cont‘).append(‘<p>增添条数</p>‘);
                page++;
            }
        })
    }
    /*实际项目中maxPage并不是前端进行写死的值,这里只是一个简单的demo,实际中前端实现上拉加载对于后台来说是分页功能实现。
    * 因此实际中最大页码数应该是由后台进行返回的
    * range是元素底部距离可视区高度差值,保证了用户在上拉加载的时候的体验度。
    * */
</script>
</html>
时间: 2024-10-09 22:26:24

上拉数据加载的相关文章

ListView下拉刷新,上拉自动加载更多

下拉刷新,Android中非常普遍的功能.为了方便便重写的ListView来实现下拉刷新,同时添加了上拉自动加载更多的功能.设计最初是参考开源中国的Android客户端源码.先看示例图.          图1                                                                                                             图2          图3                      

SwipeRefreshLayout+RecyclerView实现下拉刷新上拉自动加载

在实际开发中,为了节省开发周期,下拉刷新上拉加载通常都会采取使用一些第三方库,典型的就是用PullToRefresh,XListView等等,还有就是谷歌推荐的SwipeRefreshLayout,可惜没有上拉加载功能,需要自己去实现一个上拉加载的脚View,再加上现在代替ListView的RecyclerView+CardView使用的频率也是也来也高,不得不说,CardView效果确实很好看,一个一个的小卡片,用户体验好,I like it!!!废话不说了,奔主题!今天也玩了一下SwipeR

Android打造(ListView、GridView等)通用的下拉刷新、上拉自动加载的组件

前言 下拉刷新组件在开发中使用率是非常高的,基本上联网的APP都会采用这种方式.对于开发效率而言,使用获得大家认可的开源库必然是效率最高的,但是不重复发明轮子的前提是你得自己知道轮子是怎么发明出来的,并且自己能够实现这些功能.否则只是知道其原理,并没有去实践那也就是纸上谈兵了.做程序猿,动手做才会遇到真正的问题,否则就只是自以为是的认为自己懂了.今天这篇文章就是以自己重复发明轮子这个出发点而来的,通过实现经典.使用率较高的组件来提高自己的认识.下面我们就一起来学习吧. 整体布局结构      

mui 上拉刷新加载template数据

html没什么好说的,就是主要刷新列表要套多套一层,要不动画会不见 //待刷新区域 <div id="cx_lst" style="margin-top: 30px;"> <div id="cx_lst2"> </div> </div> //临时数组var cx = [{ "ypmc": "11", "jg": 100, "id&

android:为ListView 添加自定义头部和尾部,上拉主动加载 .(引)

1.加头尾部 (1)定自义一个xml布局 my_headview.xml 在Activity类里找到这个自定义布局,并添加到头部 LinearLayout  hearderViewLayout = (LinearLayout) LayoutInflater.(                        xwActivity.this).inflate(R.layout.my_headview, null); listview.addHeaderView(hearderViewLayout);

iscroll5上拉一定幅度加载计算留存

new IScroll('#' + parameter.id, { preventDefault: false, preventDefaultException: {tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|H1|H2|DIV|A|IMG)$/}, useTransition: true, vScrollbar: false, topOffset: 0, probeType: 2, deceleration: 0.006 }); " + parameter

ionic上拉加载更多当数据加载完没有下一页的时候我们需要显示一下&quot;没有更多了&quot;的友好提示

ionic上拉加载更多当数据加载完没有下一页的时候我们需要显示一下"没有更多了"的友好提示,但是在ionic里面遇到了一个问题.就是没有数据的时候我显示了没有更多的时候我的点击商品详情的事件失效了.怎么点都不触发 这到底怎么回事.简直是....遇到了各种奇葩问题.好了先不吐槽了.还是先解决问题吧. 我们看代码的时候很容易从因为这句话而出发.最开始的时候我是上拉第一页的时候.点击事件还有效.也就是上拉到最后一页点击事件才会失效.也就是isNext为false的时候.这时候我就会以为是ng

微信小程序 - (下拉)加载更多数据

注意和后端配合就行了,前端也只能把数据拼接起来! 无论是下拉加载还是加载更多,一样的道理! 注意首次加载传递参数 注意每次加载数据数 wxml <view class='table-rank'> <view class='tables center' wx:for="{{ranklist}}" wx:for-index="idx" wx:key="prototype"> <view class='stage-rank

angular延时函数和数据加载完才显示主要的页面、上传文件到后端、富文本框编辑框(ckeditor)

延时函数 setTimeout(()=>{ console.log("延时打印") },10000); // 延时10秒打印 //简单等数据加载完才显示主要的页面 1.先下载ngx-loading模块 npm install --save ngx-loading 2.在app.module.ts中引入NgxLoadingModule模块 import {NgxLoadingModule} from 'ngx-loading'; imports: [ BrowserModule,