如图所示。此时页面显示为中间的状态,(上面一个滚动条是下拉刷新的,下面一个是元素的滚动条),如果我往下拉,这个时候就会触发刷新。但是实际是触顶才刷新,但是这个时候我页面在中间,还没到顶部,这个问题能解决吗?这个例子中问题不明显,能不能让下拉刷新的滚动条和元素盒子的滚动条变成一个?
下面是代码:
Hello MUImui.init({
pullRefresh: {
container: '#pullrefresh',
down: {
callback: pulldownRefresh
},
up: {
contentrefresh: '正在加载...',
callback: pullupRefresh
}
}
});
//页面滚动到最下面
mui('#pullrefresh').scroll().scrollToBottom();
/**
* 下拉刷新具体业务实现
*/
function pulldownRefresh() {
console.log("下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了下拉刷新了");
setTimeout(function() {
var table = document.body.querySelector('.mui-table-view');
var cells = document.body.querySelectorAll('.mui-table-view-cell');
for (var i = cells.length, len = i + 3; i < len; i++) {
var li = document.createElement('li');
li.className = 'mui-table-view-cell';
li.innerHTML = 'Item ' + (i + 1) + '';
//下拉刷新,新纪录插到最前面;
table.insertBefore(li, table.firstChild);
}
mui('#pullrefresh').pullRefresh().endPulldownToRefresh(); //refresh completed
}, 1500);
}
var count = 0;
/**
* 上拉加载具体业务实现
*/
function pullupRefresh() {
setTimeout(function() {
mui('#pullrefresh').pullRefresh().endPullupToRefresh((++count > 2)); //参数为true代表没有更多数据了。
var table = document.body.querySelector('.mui-table-view');
var cells = document.body.querySelectorAll('.mui-table-view-cell');
for (var i = cells.length, len = i + 5; i < len; i++) {
var li = document.createElement('li');
li.className = 'mui-table-view-cell';
li.innerHTML = 'Item ' + (i + 1) + '';
table.appendChild(li);
}
}, 1500);
}
// if (mui.os.plus) {
// mui.plusReady(function() {
// setTimeout(function() {
// mui('#pullrefresh').pullRefresh().pullupLoading();
// }, 10);
//
// });
// } else {
// mui.ready(function() {
// mui('#pullrefresh').pullRefresh().pullupLoading();
// });
// }