数据量一多,只能向下滚动,不能向上滚动。向上滚动就会触发下拉刷新了。
代码如下
header.html
<body>
<header class="mui-bar mui-bar-nav">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<h1 class="mui-title">History</h1>
</header>
<div class="mui-content"></div>
<script>
(function (mui) {
mui.plusReady(function () {
var header = plus.webview.currentWebview();
var body = plus.webview.create('./body.html', 'body', {top: '48px', bottom: '0px'});
header.append(body);
});
})(mui);
</script>
</body>
body.html
<body>
<!--下拉刷新容器-->
<div id="pull-refresh" class="mui-content mui-scroll-wrapper">
<div class="mui-scroll">
<!--数据列表-->
<ul class="mui-table-view mui-table-view-chevron" id="test">
</ul>
</div>
</div>
<script>
;(function (mui) {
var list = document.getElementById('test')
var genNode = function (data) {
var li = document.createElement('li');
li.textContent = data.detail;
return li;
}
mui.plusReady(function () {
mui.init({
swipeBack: false,
pullRefresh: {
container: '#pull-refresh',
// 下拉刷新
down: {
callback: function () {
setTimeout(function () {
var data = [];
for (var i = 0; i < 5; i++) {
var _data = {
date: new Date(),
detail: Math.random().toString(36).substring(7)
}
data.push(_data);
}
data.forEach(function (_data) {
var node = genNode(_data);
list.appendChild(node);
});
mui('#pull-refresh').pullRefresh().endPulldownToRefresh();
alert('下拉刷新完成!');
}, 1000);
}
}
}
});
});
})(mui);
</script>
</body>
4 个回复
scarlex (作者)
忘了说,ios 下没这个问题,只有在 android 下才会有这个问题。
DCloud_UNI_FXY
在hello-mui的下拉刷新里能否重现?
scarlex (作者)
@DCloud_MUI_FXY
hello-mui 里面没这个问题,不过它用预加载的方式先加载页面,我这里是直接 mui.openWindow 打开 header.html ,然后再加载 body.html 。
我不知道两种方式加载页面有没区别。
j***@163.com
怎么解决的?同样遇到了
回梦無痕
这都是陈年旧贴了,建议发个新帖,最好上一个重现问题的demo
2019-06-20 15:37