下拉刷新:

html:

    <div class="page-content ptr-content">
     <%--下拉刷新图标--%>
<div class="ptr-preloader">
<div class="preloader"></div>
<div class="ptr-arrow"></div>
</div>
<div class="page-content" style="padding-top:0px">
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例1</span>
</div>
</div>
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例2</span>
</div>
</div>
</div>
</div>

js:

<script>
return {
on: {
pageInit: function (e, done) {
$('.ptr-content').on('ptr:refresh', function (e) {
//此处编写刷新逻辑代码
console.log("开始刷新");
setTimeout(function () {
console.log("结束");
app.ptr.done();
}, 1000);
});
}
}
}
</script>

无限滚动:

html:

 <%--无限滚动容器--%>
<div class="page-content infinite-scroll-content">
<div class="simple-list">
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例1</span>
</div>
</div>
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例2</span>
</div>
</div>
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例3</span>
</div>
</div>
<div class="card">
<div class="card-footer"><span style="color: #CC0000">案例4</span>
</div>
</div>
</div>
<%--预加载器--%>
<div class="preloader infinite-scroll-preloader"></div>
</div>

js:

<script>
return {
on: {
pageInit: function (e, done) {
var allowInfinite = true;//加载标志
var lastItemIndex = $('.simple-list div[class="card"]').length;//现有加载量
var maxItems = 200;//最大加载量
var itemsPerLoad = 5;//每次加载量 //滚动事件处理程序
$('.infinite-scroll-content').on('infinite', function () {
if (!allowInfinite) return;// 如果正在加载,退出
console.log("当前数量:" + lastItemIndex);
allowInfinite = false;//设置加载标志 //模拟1秒加载
setTimeout(function () {
//设置正在加载标志
allowInfinite = true;
if (lastItemIndex >= maxItems) {
app.infiniteScroll.destroy('.infinite-scroll-content');//没有更多可加载项,销毁加载事件,防止不必要加载
$('.infinite-scroll-preloader').remove(); //删除预紧器
return;
}
//生成新html
var html = '';
for (var i = lastItemIndex + 1; i <= lastItemIndex + itemsPerLoad; i++) {
html += '<div class="card">';
html += '<div class="card-footer">';
html += '<span style="color: #CC0000">案例' + i + '</span>';
html += '</div>';
html += '</div>';
}
$('.simple-list').append(html); //绑定
lastItemIndex = $('.simple-list div[class="card"]').length; //更新最近索引
console.log("加载后数量:" + lastItemIndex);
}, 1000);
});
}
}
}
</script>

解释:

pageInit: function (e, done) {} 代表文档就绪函数

$('.ptr-content').on('ptr:refresh', function (e) {} 代表class为“ptr-content”的div下拉刷新事件(ptr:refresh是下拉刷新事件)

$('.infinite-scroll-content').on('infinite', function () {} 代表class为“infinite-scroll-content”的div滚动事件(infinite是滚动事件)
 

如有问题,欢迎留言

framework7 下拉刷新、无限滚动的更多相关文章

  1. jQuery WeUI 组件下拉刷新和滚动加载的实现

    最近在做手机版使用到了下拉刷新和滚动加载,记录一下实现过程: 一.引入文件 ? 1 2 3 4 <link rel="stylesheet" href="Conte ...

  2. XRecyclerView:实现下拉刷新、滚动到底部加载更多以及添加header功能的RecyclerView

    介绍: 一个实现了下拉刷新,滚动到底部加载更多以及添加header功能的的RecyclerView.使用方式和RecyclerView完全一致,不需要额外的layout,不需要写特殊的adater. ...

  3. JRoll 2 使用文档(史上最强大的下拉刷新,滚动,无限加载插件)

    概述 说明 JRoll,一款能滚起上万条数据,具有滑动加速.回弹.缩放.滚动条.滑动事件等功能,兼容CommonJS/AMD/CMD模块规范,开源,免费的轻量级html5滚动插件. JRoll第二版是 ...

  4. Framework7 下拉刷新

    html结构 <div class="page"> <!-- Page content should have additional "pull-to- ...

  5. 基于iscroll.js实现下拉刷新和上拉加载特效

    现在已经不是纯Android独霸天下的时代了,H5嵌入Android的Hybrid混合开发是大势所趋.今天给大家带来的就是移动端中常见的"上拉刷新,下拉加载"特效,这个特效将会基于 ...

  6. [Android] Android 支持下拉刷新、上拉加载更多 的 XRecyclerview

    XRecyclerView一个实现了下拉刷新,滚动到底部加载更多以及添加header功能的的RecyclerView.使用方式和RecyclerView完全一致,不需要额外的layout,不需要写特殊 ...

  7. DCloud-MUI:下拉刷新、上拉加载

    ylbtech-DCloud-MUI:下拉刷新.上拉加载 1. 下拉刷新返回顶部 0. http://dev.dcloud.net.cn/mui/pulldown/ 1. 概述 为实现下拉刷新功能,大 ...

  8. apicloud如何实现优雅的下拉刷新与加载更多

    apicloud中提供下拉刷新监听事件api,也提供滚动到底部事件的监听,能够实现下拉刷新和滚动到底部加载更多功能,但是我们真的就满足实现功能了吗?将两个代码拼凑起来运行看看发现了什么?是的,在滚动到 ...

  9. Qt qml listview 列表视图控件(下拉刷新、上拉分页、滚动轴)

    Qt qml listview下拉刷新和上拉分页主要根据contentY来判断.但要加上顶部下拉指示器.滚动条,并封装成可简单调用的组件,着实花了我不少精力:) [先看效果]    [功能] 下拉刷新 ...

随机推荐

  1. javascript之DOM(二Document对象)

    javascript通过Document类型来表示文档.在浏览器中document是HTMLDocument对象(继承自Document)的一个实例,表示整个html页面.而且在浏览器中documen ...

  2. C语言 严蔚敏数据结构 线性表之链表实现

    博主最近在考成都大学皇家计算机科学与技术专业,复习专业课数据结构,正好学习到线性结构中的线性表用链表这种存储结构来实现. 首先,数据结构包括1.数据的操作2.逻辑结构3.存储结构(数据结构三要素. 直 ...

  3. Python3+HTMLTestRunner+SMTP生成测试报告后发送邮件

    在前一篇https://www.cnblogs.com/zhengyihan1216/p/11549820.html 中记录了如何生成html格式的报告, 这篇记录下怎么将测试报告通过邮件发出 1.对 ...

  4. 团队第五次作业:alpha2成绩汇总

    一.作业题目 团队第五次作业:alpha2发布 二.作业评分标准 博客评分规则(总分100)博客要求 给出开头和团队成员列表(10') 给出发布地址以及安装手册(20') 给出测试报告(40') 给出 ...

  5. MySQL服务启动时显示本地计算机上的MySQL服务启动后停止。某些服务在。。。

    之前一直用的好端端的,这次启动服务突然就报了这错误. 更好的阅读体验可访问 这里. 起因 为了使用 LOAD_FILE 函数,在数据库配置文件 my.ini的 [mysqld] 里添加 secure_ ...

  6. proc介绍,free命令查看内存

    proc介绍 https://www.cnblogs.com/dongzhuangdian/p/11366910.html https://blog.csdn.net/majianting/artic ...

  7. redis缓存, 缓存击穿,缓存雪崩,缓存穿透

    在实际项目中,MySQL数据库服务器有时会位于另外一台主机,需要通过网络来访问数据库:即使应用程序与MySQL数据库在同一个主机中,访问MySQL也涉及到磁盘IO操作(MySQL也有一些数据预读技术, ...

  8. Django 1.11 使用命令makemigrations命令无法执行表修改动作

    由于在学习过程中,遇到models模型变动,变动后合并发生问题,故当时做了删除应用文件夹下migrations文件,由于数据库里无较多新数据,故删除后重建,但重建后执行模型合并操作结果为No Chan ...

  9. [PHP] Elasticsearch 6.4.2 的安装和使用

    Elasticsearch 6.4.2 的安装和使用 一.安装http://www.ruanyifeng.com/blog/2017/08/elasticsearch.htmlhttps://www. ...

  10. jupyterlab数据处理

    目录 jupyterlab: jupyterlab简介: jupyterlab特点: jupyterlab安装,启动 使用jupyterlab: 设置jupyterlab jupyterlab: ju ...