热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

listloading一个挪动端的上拉、下拉加载更多的组件

listloading.jslistloading是一个挪动端的上拉、下拉加载更多的组件。重要依赖于iscroll.jsv5.1.2基本上开辟的组件,基本库能够运用jquery.j
listloading.js

listloading是一个挪动端的上拉、下拉加载更多的组件。重要依赖于iscroll.js v5.1.2基本上开辟的组件,基本库能够运用jquery.js或许zepto.js操纵dom节点,现在我是运用了zepto.js作为基本库操纵dom,以jquery插件的情势存在。假如不想以插件体式格局运用,则只需要把listloading直接移植你需要的库内里就ok啦。listloading重要针对挪动端而生,在运用浏览器自带转动,用户体验很不友爱,与Android和ios差异甚远,所以挑选iscroll.js,它完成体式格局是运用css3动画translate 3D 转换来完成转动结果,transform属性运用硬件加速,机能要领获得很大进步。支撑Node引入,require引入.

结果图:

《listloading 一个挪动端的上拉、下拉加载更多的组件》《listloading 一个挪动端的上拉、下拉加载更多的组件》
《listloading 一个挪动端的上拉、下拉加载更多的组件》
《listloading 一个挪动端的上拉、下拉加载更多的组件》

demo地点: https://gtdalp.github.io/widg…

npm装置

npm install listloading

运用要领以下:

1、html构造





    与iscroll建立的构造一样,然则指定的建立的元素节点必需指定ID,由于在组件内里宣布定阅形式需要做一个标识。由于iscroll在节点元素建立之前,必需先设定高度,不然会致使没法转动;iscroll建立终了是指定给第一个子元素转动,所以listloading的上拉和下拉革新也是追加到第一个子元素内里,实在把第一个子元素设想成为html内里的body就能够了。

    2、需要引入的js



    3、挪用

    var Listloading = require('listloading');
    var m = 3;
    var n = 0;
    var hei = $(window).height();
    // 建立iscroll之前必需要先设置父元素的高度,不然没法拖动iscroll
    $('#listloading, .listloadingClass').height(hei);
    // 模板
    var createHtml = function(){
    var __html = '';
    for(var i = 0; i <15; i++){
    var now = new Date().getTime();
    now = new Date(now + i*1000000);
    __html += '

  • listloading' + (n++) + '

    挪动端上拉下拉革新组件...

  • ';
    }
    return __html;
    }
    // demo
    var listloading = new Listloading('#listloading', {
    disableTime: true, // 是不是需要显现时候
    pullUpAction : function(cb){ // 上拉加载更多
    m--;
    var flg = false;
    var __html = createHtml();
    if(m <1){
    flg = true;
    }else{
    $('#order-list').append(__html);
    }
    // 数据加载终了需要返回 end为true则为悉数数据加载终了
    cb(flg);

    },
    pullDownAction : function(cb){ // 下拉革新
    // true则为默许加载 false为下拉革新
    if (flg) {
    console.log('默许加载');
    }
    m = 3;
    var __html = createHtml();
    $('#order-list').html(__html);
    // 实行完实行要领以后必需实行回调 回调的作用是关照默许加载已悉数实行终了,顺序需要去建立iscroll或许做下拉革新行动
    cb();
    },
    // iscroll的API
    iscrollOptions: {
    //
    }
    });
    // 点击事宜
    listloading.evt('li', 'click', function (dom) {
    dom.remove();
    // $('#order-list').append(createHtml());
    listloading.refresh();
    });
    // demo
    // var k = 3;
    // var listloadingClass = new Listloading('.listloadingClass', {
    // pullUpAction : function(cb){ //上拉加载更多
    // k--;
    // var flg = false;
    // var __html = createHtml();
    // if(k <1){
    // flg = true;
    // }else{
    // $('#listloadingClass-order-list').append(__html);
    // }
    // // 数据加载终了需要返回 end为true则为悉数数据加载终了
    // cb(flg);

    // },
    // pullDownAction : function(cb, flag){ //下拉革新
    // // flag 为true 第一次加载
    // if (flag) {
    // // dosomething...
    // }
    // k = 3;
    // var __html = createHtml();
    // $('#listloadingClass-order-list').html(__html);
    // // 实行完实行要领以后必需实行回调 回调的作用是关照默许加载已悉数实行终了,顺序需要去建立iscroll或许做下拉革新行动
    // cb();
    // }
    // });

    4、API

    4.1 下拉革新

    初始化会实行一次,重如果建立iscroll,以后每次下拉革新完毕以后实行,当在要领内里实行终了你的顺序以后需要实行一个回调函数,示知已悉数顺序实行终了,listloading就会自动去挪用iscroll的革新功用,回调不需要传参。

    options.pullDownAction = function(cb, flag){ // 下拉革新
    // flag 为true 第一次加载
    if (flag) {
    // dosomething...
    }
    // 实行完实行要领以后必需实行回调
    cb();
    }

    4.2 上拉加载更多

    每次上拉加载更多完毕以后实行,一样的在实行完你的顺序以后需要实行一个回调函数,回调内里需要回调一个布尔值,假如为true则怎样已悉数加载终了,就已拉究竟了。

    options.pullUpAction = function(cb){ // 上拉加载更多
    .....
    // 实行完实行要领以后必需实行回调 true为上拉究竟
    cb(true);
    }

    4.3 烧毁ListLoading

    listloading.destroy();

    4.4 革新listloading

    转动地区节点有增删则需要在操纵终了以后挪用此要领

    listloading.refresh();

    4.5 是不是显现时候 默许值为false

    true下拉显现时候,间隔上次革新的时候

    options.disableTime = true

    4.6 上拉加载更多笔墨

    options.upLoadmoretxt = '上拉加载更多笔墨'; // 内里能够放html标签

    4.7 下拉革新笔墨

    options.pullDrefreshtxt = '下拉革新笔墨'; // 内里能够放html标签

    4.8 正在加载中笔墨

    options.loadertxt = '正在加载中笔墨'; // 内里能够放html标签

    4.9 松开革新笔墨

    options.Realtimetxt = '松开革新笔墨'; // 内里能够放html标签

    4.10 已悉数加载终了笔墨

    options.loaderendtxt = '已悉数加载终了笔墨'; // 内里能够放html标签

    4.12 iscroll的设置

    options.iscrollOptiOns= {};

    目次构造

    listloading

    ├────build
    | └──listloading.js // 源文件
    ├────demos
    | └──.... // demo字体款式
    ├────dist
    | |──css
    | | └──listloading.min.css // 紧缩css
    | └──js
    | └──listloading.min.js // 紧缩js源文件
    ├────src
    | |──css
    | | └──base.css // 基本base款式
    | |──fontface
    | | └──... // 字体文件
    | |──images
    | | └──... // demo图片
    | |──jslib
    | | └── ... // 第三方库

    推荐阅读
    • XML介绍与使用的概述及标签规则
      本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
    • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
    • javascript  – 概述在Firefox上无法正常工作
      我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
    • 微软头条实习生分享深度学习自学指南
      本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
    • CSS3选择器的使用方法详解,提高Web开发效率和精准度
      本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
    • 使用在线工具jsonschema2pojo根据json生成java对象
      本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
    • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
      原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
    • Java验证码——kaptcha的使用配置及样式
      本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
    • 标题: ... [详细]
    • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
    • Html5-Canvas实现简易的抽奖转盘效果
      本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
    • Ihavethefollowingonhtml我在html上有以下内容<html><head><scriptsrc..3003_Tes ... [详细]
    • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
    • position属性absolute与relative的区别和用法详解
      本文详细解读了CSS中的position属性absolute和relative的区别和用法。通过解释绝对定位和相对定位的含义,以及配合TOP、RIGHT、BOTTOM、LEFT进行定位的方式,说明了它们的特性和能够实现的效果。同时指出了在网页居中时使用Absolute可能会出错的原因,即以浏览器左上角为原始点进行定位,不会随着分辨率的变化而变化位置。最后总结了一些使用这两个属性的技巧。 ... [详细]
    • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
    author-avatar
    YY666JAME_381
    这个家伙很懒,什么也没留下!
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有