使用了选项卡切换+上拉刷新(div模式),但我的选项卡是先查询的,查询结果拼接出html
var createFragmentTab = function(div, productInfo) {
console.log(productInfo)
var title = '产品列表';
$("#fuzzyPro").html(title);
var fragment = document.createDocumentFragment();
var a;
for(var i=0;i<productInfo.length;i++){
a = document.createElement('a');
if(i==0){
a.className = 'mui-control-item mui-active';
}else{
a.className = 'mui-control-item';
}
a.href='#item'+(i+1)+'mobile'
var html='';
html += '<span class="products">'+productInfo[i].PRODUCTNAME+'('+productInfo[i].NUM+')</span>'
a.innerHTML = html;
fragment.appendChild(a);
}
return fragment;
};
类似这样先把HTML拼接出来,下面的mui-slider-group也是一样,拼接对应的div,然后再调用
function initFreshGroup(){
//循环初始化所有下拉刷新,上拉加载。
$.each(document.querySelectorAll('.mui-slider-group .mui-scroll'), function(index, pullRefreshEl) {
console.log(index)
console.log(pullRefreshEl)
$(pullRefreshEl).pullToRefresh({
up: {
auto: true,
show: false, //显示底部上拉加载提示信息,可选;
contentrefresh: loading_tip, //上拉进行中提示信息
contentnomore: nomore_tip, //上拉无更多信息时提示信息
callback: function() {
var self = this;
setTimeout(function() {
var ul = self.element.querySelector('.mui-table-view');
console.log(ul);
ul.appendChild(createFragment(ul, index, 5));
self.endPullUpToRefresh();
}, 1000);
}
}
});
});
var createFragment = function(ul, index, count, reverse) {
var length = ul.querySelectorAll('li').length;
var fragment = document.createDocumentFragment();
var li;
for (var i = 0; i < count; i++) {
li = document.createElement('li');
li.className = 'mui-table-view-cell';
li.innerHTML = '第' + (index + 1) + '个选项卡子项-' + (length + (reverse ? (count - i) : (i + 1)));
fragment.appendChild(li);
}
return fragment;
};
}
这个时候会报错,报Uncaught TypeError: $(...).pullToRefresh is not a function
0 个回复