最近在做手机版使用到了下拉刷新和滚动加载,记录一下实现过程:

一、引入文件

1
2
3
4
<link rel="stylesheet" href="Content/jqueryweui/weui.min.css">
<link rel="stylesheet" href="Content/jqueryweui/jquery-weui.min.css">
<script type="text/javascript" src="Content/jqueryweui/jquery.min.js" ></script>
<script type="text/javascript" src="Content/jqueryweui/jquery-weui.min.js"></script>

二、页面布局

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div class="content" style="background-color: #FFFFFF; width: 100%;height:88%; margin-top:40px;margin-top: 45px;position: absolute; margin-bottom:45px;padding:0px; overflow: hidden;">
  <div class="list-main-mian weui-form-preview infinite weui-pull-to-refresh" id="listwrap" style="height:100%; margin-top: 1px;overflow:auto;  z-index: 1">
        <!--下拉刷新-->
        <div class="weui-pull-to-refresh__layer" style="padding: 5px;">
            <div class="weui-pull-to-refresh__arrow"></div>
            <div class="weui-pull-to-refresh__preloader"></div>
            <div class="down">下拉刷新</div>
            <div class="up">释放刷新</div>
            <div class="refresh">正在刷新</div>
        </div>
        <div class="weui-form-preview" id="Tolist">
           <!--内容展示区域-->
        </div>
        <div class="weui-loadmore" style="padding-bottom:30px;height:20px">
            <i class="weui-loading"></i>
            <span class="weui-loadmore__tips">正在加载</span>
        </div>
    </div>
</div>

三、js部分

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
  var pages = 1;
   var sizes = 4;
   var loading = false;  //状态标记
   $(function () {
       loadlist();
   })
 //=========================下拉刷新
   $("#listwrap").pullToRefresh().on("pull-to-refresh", function () {
       setTimeout(function () {
           pages = 1;
           $("#Tolist").html("");
           loadlist();
           if (loading) loading = false;
           $("#listwrap").pullToRefreshDone(); // 重置下拉刷新
       }, 1500);   //模拟延迟
   });
   //============================滚动加载
   $("#listwrap").infinite().on("infinite", function () {
       if (loading) return;
       loading = true;
       pages++; //页数
       $('.weui-loadmore').show();
       setTimeout(function () {
           loadlist();
           loading = false;
       }, 2500);   //模拟延迟
   });
// =======加载数据loadlist();
  function loadlist() {
       var html = "";
       $.ajax({
           type: "POST",
           url: "/Index/Index",
           data: { 'page': pages, 'size': sizes },
           dataType: "json",
           error: function (request) {
               $(".weui-loadmore").hide();         
               html += "<div class=\"weui-cells__title\" >已无更多数据</div>";
               $("#Tolist").append(html);
           },
           success: function (data) {
               if (data.List.length > 0) {
                   for (var i = 0; i < data.List.length; i++) {
                       html += ' <div class="weui-form-preview__bd"> ';
                       html += ' <div class="weui-form-preview__item"> ';
                       html += ' <label class="weui-form-preview__label">' + data.List[i].Name + '</label> ';
                       html += ' </div> ';
                       html += ' </div> ';
                   }
                   $("#Tolist").append(html);
               }
               else {
                   html += "<div class=\"weui-cells__title\" >已无更多数据</div>";
                   $("#Tolist").append(html);
                   loading = true;
               }
               $(".weui-loadmore").hide();
           }
       });
   }

  

  

jQuery WeUI 组件下拉刷新和滚动加载的实现的更多相关文章

  1. 在element-ui的select下拉框加上滚动加载

    在项目中,我们需要运用到很多来自后端返回的数据.有时是上百条,有时甚至上千条.如果加上后端的多表查询或者数据量过大,这就导致在前端的显示就会及其慢,特别是在网络不好的时候更是如此. 自然,后端就做了一 ...

  2. mui 动态加载数据出现的问题处理 (silder轮播组件 indexedList索引列表 下拉刷新不能继续加载数据)

    mui-slider 问题:动态给mui的图片轮播添加图片,轮播不滚动. 解决:最后把滚动轮播图片的mui(".mui-slider").slider({interval: 300 ...

  3. SwipeRefreshLayout实现下拉刷新上滑加载

    1. 效果图 2.RefreshLayout.java package myapplication.com.myapplication; import android.content.Context; ...

  4. 第三方 XListview 上拉加载、下拉刷新、分页加载和Gson解析

    注意:此Demo用的是第三方的Xlistview.jar,需要复制me文件夹到项目中,两个XML布局文件和一张图片 把下面的复制到String中 <string name="xlist ...

  5. 微信小程序下拉刷新 并重新加载数据

    1.在json页面配置: { "enablePullDownRefresh": true } 2.调用刷新函数 onPullDownRefresh: function() { wx ...

  6. Android 下拉刷新上啦加载SmartRefreshLayout + RecyclerView

    在弄android刷新的时候,可算是耗费了一番功夫,最后发觉有现成的控件,并且非常好用,这里记录一下. 原文是 https://blog.csdn.net/huangxin112/article/de ...

  7. Vue Scroller:Vue 下拉刷新及无限加载组件

    Vue Scroller Vue Scroller is a foundational component ofVonic UI. In purpose of smooth scrolling, pu ...

  8. Vue 下拉刷新及无限加载组件

    原文  https://github.com/wangdahoo/vue-scroller 主题 Vue.js Vue Scroller Vue Scroller is a foundational ...

  9. juery下拉刷新,div加载更多元素并添加点击事件(二)

    buffer.append("<div class='col-xs-3 "+companyId+"' style='padding-left: 10px; padd ...

随机推荐

  1. (博弈论)51NOD 1069 Nim游戏

    有N堆石子.A B两个人轮流拿,A先拿.每次只能从一堆中取若干个,可将一堆全取走,但不可不取,拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出N及每堆石子的数量,问最后 ...

  2. ATX 学习 (三)-atxserver2-android-provider

    服务端代码 代码clone到本地,搭好相应环境(怎么搭的这里就不介绍了,很好搭的哈)一般库首先查看main.py文件,debug模式开始运行 一开始就是没接触过的tornado.ioloop,有点偏底 ...

  3. C语言小项目-火车票订票系统

    list.h #ifndef __LIST_H__ #define __LIST_H__ #include "stdafx.h" #include <stdio.h> ...

  4. 【BZOJ4059】Non-boring sequences(分析时间复杂度)

    题目: BZOJ4059 分析: 想了半天没什么想法,百度到一个神仙做法-- 设原数列为 \(a\),对于每一个 \(i\) 求出前一个和后一个和 \(a_i\) 相等的位置 \(pre[i]\) 和 ...

  5. 向Linus学习,让代码具有good taste

    在最近关于 Linus Torvalds 的一个采访中,这位 Linux 的创始人,在采访过程中大约 14:20 的时候,提及了关于代码的 “good taste”.good taste?采访者请他展 ...

  6. oracle 自定义类型 type / create type

    一:Oracle中的类型有很多种,主要可以分为以下几类: 1.字符串类型.如:char.nchar.varchar2.nvarchar2. 2.数值类型.如:int.number(p,s).integ ...

  7. 395 Longest Substring with At Least K Repeating Characters 至少有K个重复字符的最长子串

    找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k .输出 T 的长度.示例 1:输入:s = "aaabb", k = 3输出:3最 ...

  8. mysql 更改字符集

    Windows: 安装目录下新建my.ini文件,输入一下内容 [mysqld]#修改服务器端默认字符编码格式为utf8character-set-server = utf8 [client]#修改客 ...

  9. arx升级

    如果你打算升级你的ARX或者想在同一个IDE(譬如vs2010)编译多个版本的ARX,那么我希望这篇帖子对你有帮助首先你应该简单了解Objectarx开发的版本对应情况:R15   --- 2000- ...

  10. mfc按钮悬停显示文字

    .h CToolTipCtrl m_toopTip; .cpp oninitdialog void CDlgDwgLibMan::InitTooltips(){ EnableToolTips(); m ...