由于项目需要在微信公众号做“健康资讯”相关的,所以会用到下拉刷新,可是使用的原生H5做页面,不过希望能够做到和app原生一样的下拉刷新效果,然后在网上找了找H5下拉刷新相关的资料,具体有:Iscroll,MUI,Hook.js,dragloader 等,它们宣称都可以很好的解决下拉刷新的问题,但是我查看的具体的官网文档和例子后,我还是选择了Iscroll作为本次的下拉刷新实现,因为其它的技术要么文档写的不好,要么例子实现太少,而iscroll的例子却很多。

下面是我从项目里面把下拉刷新的模块扒出来的,把实现的效果分享一下

具体实现代码思路是:页面的列表展示通过后台返回的json数组,然后遍历json数组通过js添加列表。每次向下刷新后类似点击分页“下一页”,具体代码如下:

健康资讯

html, body{ background-color: #fff;}

.m-img-font-box{}

.m-img-font-box a.link{ display: block; border-bottom: 1px solid #ccc;}

.m-img-font-box a.link dl{ padding: 5px 10px; height: 50px; overflow: hidden;}

.m-img-font-box a.link dl dt{ width: 60px; height: 60px; float: left;}

.m-img-font-box a.link dl dt img{ width: 100%; height: 82%;}

.m-img-font-box a.link dl dd{ margin-left: 65px; padding-top: 1px;}

.m-img-font-box a.link dl dd p{ font-size: 16px; color: #bbb;}

.m-img-font-box a.link dl dd p.title{ font-size: 16px; color: #464646; width: 91%; overflow: hidden; text-overflow:ellipsis; white-space:nowrap;}

.m-img-font-box a.link dl dd p.font{ width: 98%; overflow: hidden; text-overflow:ellipsis; white-space:nowrap; font-size: 14px;}

h3{ font-size: 13px; font-weight: normal; padding: 5px 10px;}

#wrapper {

position:absolute; z-index:1;

top:30px; bottom:0; left:-9999px;

width:100%;

background:#FFF;

overflow:auto;

}

#scroller {

position:absolute; z-index:1;

-webkit-tap-highlight-color:rgba(0,0,0,0);

width:100%;

padding:0;

}

#pullUp {

background:#fff;

height:40px;

line-height:40px;

padding:5px 10px;

border-bottom:1px solid #ccc;

font-weight:bold;

font-size:14px;

color:#888;

}

#pullUp.loading .pullUpLabel {

background:url(../images/loading/loading.gif) no-repeat center 0;

width: 100%;

height: 30px;

align:center;

background-size: auto 100%;

}

var myScroll,

pullUpEl, pullUpOffset,

generatedCount = 0;

var currenPage = 0; var pageSize = 3;

function pullUpAction () {

currenPage ++;

var elInit = $("#thelist");

var param = {"currentPage":currenPage,"pageSize":pageSize};

$.ajax({

url:"result.json", //后台处理程序

type:'post', //数据发送方式

dataType: 'json',

data:param,

async: true,

success:function(data){

var result = "" ;

$(data).each(function(){

var checker = $(this)[0];

result += "

"+

"

"

"+checker.title+"

"+

"

"+checker.subTitle+"

"+

"

";

});

elInit.append(result);

myScroll.refresh();

}

});

}

function loaded() {

pullUpEl = document.getElementById('pullUp');

if(pullUpEl != null){

pullUpOffset = pullUpEl.offsetHeight;

}else{

pullUpOffset = 0;

}

myScroll = new iScroll('wrapper', {

useTransition: true,

onRefresh: function () {

if (pullUpEl.className.match('loading')) {

pullUpEl.className = '';

$(pullUpEl).css("display", "none");

pullUpEl.querySelector('.pullUpLabel').innerHTML = 'Pull up to load more...';

}

},

onScrollMove: function () {

if (this.y < (this.maxScrollY - 5) && !pullUpEl.className.match('flip')) {

pullUpEl.className = 'flip';

$(pullUpEl).css("display","");

pullUpEl.querySelector('.pullUpLabel').innerHTML = '松开载入更多..';

this.maxScrollY = this.maxScrollY;

} else if (this.y > (this.maxScrollY + 5) && pullUpEl.className.match('flip')) {

pullUpEl.className = '';

pullUpEl.querySelector('.pullUpLabel').innerHTML = 'Pull up to load more...';

this.maxScrollY = pullUpOffset;

}

},

onScrollEnd: function () {

if (pullUpEl.className.match('flip')) {

pullUpEl.className = 'loading';

$(pullUpEl).css("display","");

pullUpEl.querySelector('.pullUpLabel').innerHTML = '';

pullUpAction(); // Execute custom function (ajax call?)

}

}

});

document.getElementById('wrapper').style.left = '0';

}

document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);

document.addEventListener('DOMContentLoaded', function () { setTimeout(loaded, 200); }, false);

//页面加载完成后,向后台请求数据

$(function(){

pullUpAction();

});

资讯列表

html实现微信公众号,H5在微信公众号的下拉刷新实现相关推荐

  1. 微信小程序自定义导航栏与自带下拉刷新冲突

    在使用HbuilderX开发微信小程序时(在HbuilderX中写代码,在微信开发者工具编译),由于微信小程序自带的导航栏功能少,样式单一等,于是采用colorUI自定义导航栏实现需求.而问题就一而再 ...

  2. 微信小程序入门五上滑加载下拉刷新

    之前谈到文章列表的数据加载,是一次性全部加载,这样是不友好的.这章介绍加载和刷新. 效果图: 先介绍在IDE中,怎么模拟上滑这个操作.开始我是用鼠标点击文章列表,然后先上移动.结果一直没有结果,以为是 ...

  3. 微信小程序下拉刷新、上拉加载

    微信小程序官方没有给出具体的下拉刷新和上拉加载组件,我们可以基于小程序原生组件scroll-view的扩展与封装,实现简单的上拉加载.下拉刷新组件. 1. 封装组件 // components/cus ...

  4. html仿照聊天下拉刷新,h5实现下拉刷新,模拟原生下拉刷新,封装组件

    上一篇,我们实现了h5 实现向左平滑,出现按钮操作,封装组件,模拟购物车左滑删除,现在我们将要实现一个下拉刷新的组件,模拟原生下拉刷新的操作.这对h5手势的要求也是蛮高的,接下来,我们就一步一步的实现 ...

  5. 微信公众号上拉加载下拉刷新

    最近再再做一个公众号的项目有需要用到上拉加载,下拉刷新的技术.在网上找了很久,终于找到一个很好用 js 插件,今天我就把这个插件分享给大家,该包可用于App和微信公众号 , 资源下载地址:https: ...

  6. 微信html5 下拉刷新,【报Bug】Iphone6s微信浏览器打开H5页面,出现下拉刷新bug

    详细问题描述 (DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题) [内容] 重现步骤 [1.运 ...

  7. 提高微信小程序的应用速度的常见方式有哪些? 小程序怎么实现下拉刷新? 简述微信小程序原理? 小程序的发布流程(开发流程)分析下微信小程序的优劣势?小程序授权登录流程? 小程序支付如何实现

    小程序部分常见面试题 提高微信小程序的应用速度的常见方式有哪些? 提高页面加载速度 用户行为预测 减少默认data的大小 组件化方案 分包预下载 小程序与原生App相比优缺点? 优点: 基于微信平台开 ...

  8. ios微信小程序下拉刷新怎么配_为什么他的下拉刷新是个动画效果?

    看到别人的下拉刷新动画!是不是蠢蠢欲动!也想马上拥有一个~~ 比如: 再比如: "小二,上菜!" 1            引入下拉刷新组件(组件代码可联系作者获取)  代码:  ...

  9. 微信小程序直播间实现下拉刷新(目前全网最优最美观的方法)

    微信小程序直播间实现下拉刷新 先上效果: 1.下拉距离一定时出现动画,保持下拉直到距离足够大时触发函数加载直播间列表,而且在足够大距离时会有振动反馈,增强用户体验 2.下拉小距离出现动画,此时释放不会 ...

最新文章

  1. MMDetection3D:新一代通用3D目标检测平台
  2. ISME Commun: 华中农业大学在菌群收敛机制方面取得新进展
  3. altium恢复所有默认设置_windows10技巧 恢复出厂状态的4种方法
  4. 线性代数第五版吉尔伯特课后答_线性代数同济第五版第六章课后习题答案!
  5. Java读 写文本_java读文件写文件的方法
  6. c语言+游戏破解,c语言获得键盘的按键
  7. 什么是dos及常见命令详解
  8. 百度云 java私塾_JAVA私塾-百度云
  9. 忘记Apple ID密码,如何移除iCloud激活锁
  10. rectangle()函数与rect类详解
  11. movs 数据传送指令_1.数据传送指令中,错误的操作是()。 A.MOVSS[BX+DI],1000H B.......
  12. cmd批量修改文件名 增加文字_cmd命令批量修改文件名或后缀名
  13. 尺寸工程分析软件-尺寸公差分析软件-尺寸链计算软件
  14. P4313 文理分科 详细理解
  15. 本地服务:无法访问此网站 localhost 拒绝了我们的连接请求。ERR_CONNECTION_REFUSED
  16. 微信小程序 post请求发送x-www-form-urlencoded类型数据
  17. H3C服务器安装Windows Server2012R2
  18. C#利用DirectX显示.x三维动画
  19. root精灵黑屏,刷机精灵解除root
  20. 建国集团与黄江二手车签订战略合作协议

热门文章

  1. 关于Scrapy爬虫框架中meta参数的使用示例演示(下)
  2. 拉钩招聘信息爬取以及可视化
  3. 爬取拉钩Java招聘数据
  4. OPPO R7s线刷和恢复出厂设置的比较
  5. 网络可以做什么副业?网上有哪些赚钱的副业?
  6. 常见离散型随机变量比较
  7. 中国电信 CTWing 物联网平台运营数据大解密
  8. 北航计算机学院 高小鹏,毕业季 | 以来自学院的深情祝福,定格属于你的最美青春(二)...
  9. 微信跑腿小程序怎么做
  10. 速学大学计算机基本内容(一)有图