var nexted, pageed;
function initLayuiFlow(){
layui.flow.load({
elem : '.layui-timeline',
scrollElem : '.layui-timeline',
done : function(page, next) {
nexted = next; //next是一个函数,将其保存在全局变量中
pageed = page;
$.get(path + '/bg/musicRecord/init',{pageNum:page}, function(dataJson) {
if(!dataJson.state){ return layer.msg(dataJson.msg);}
insertElements(dataJson.dataList, dataJson.total);
});
}
});
}
/**
* 动态插入元素
*/
function insertElements(data, total){
layui.each(data, function(index, item) {
var curred = $.parseDate(data[index].createtime,'yyyy-MM-dd');
var nexted = index == data.length-1 ? null :$.parseDate(data[index+1].createtime,'yyyy-MM-dd');
if(curred != nexted){
var lis = '<li class="layui-timeline-item">', text = $('.layui-timeline li:last h3').text();
if (curred != text) {
lis += '<i class="layui-icon layui-timeline-axis"></i>';
}
lis += '<div class="layui-timeline-content layui-text">';
if (curred != text) {
lis += '<h3 class="layui-timeline-title"><i class="layui-icon layui-icon-log"></i>'+ curred+ '</h3>';
}
layui.each(data, function(index, item) {
if(curred == $.parseDate(data[index].createtime,'yyyy-MM-dd')){
lis += '<p class="item-music">';
lis += ' <span>';
lis += ' <a>'+data[index].pmName+'</a>';
lis += ' <a>'+$.parseDate(data[index].createtime,"yyyy-MM-dd hh:mm:ss")+'</a>';
lis += ' <a>试听记录</a>';
lis += '</span>';
lis += '</p>';
}
});
lis += '</div>';
lis += '</li>';
nexted(lis, pageed < total); //调用刚刚保存的全局函数
}
});
}
运行结果
正确做法
var flows = {}; //将变量改为引用类型
function initLayuiFlow(){
layui.flow.load({
elem : '.layui-timeline',
scrollElem : '.layui-timeline',
done : function(page, next) {
flows.page = page;
flows.next = next; //同样将函数保存在全局引用变量当中
$.get(path + '/bg/musicRecord/init',{pageNum:page}, function(dataJson) {
if(!dataJson.state){ return layer.msg(dataJson.msg);}
insertElements(dataJson.dataList, dataJson.total);
});
}
});
}
function insertElements(data, total){
layui.each(data, function(index, item) {
var curred = $.parseDate(data[index].createtime,'yyyy-MM-dd');
var nexted = index == data.length-1 ? null :$.parseDate(data[index+1].createtime,'yyyy-MM-dd');
if(curred != nexted){
var lis = '<li class="layui-timeline-item">', text = $('.layui-timeline li:last h3').text();
if (curred != text) {
lis += '<i class="layui-icon layui-timeline-axis"></i>';
}
lis += '<div class="layui-timeline-content layui-text">';
if (curred != text) {
lis += '<h3 class="layui-timeline-title"><i class="layui-icon layui-icon-log"></i>'+ curred+ '</h3>';
}
layui.each(data, function(index, item) {
if(curred == $.parseDate(data[index].createtime,'yyyy-MM-dd')){
lis += '<p class="item-music">';
lis += ' <span>';
lis += ' <a>'+data[index].pmName+'</a>';
lis += ' <a>'+$.parseDate(data[index].createtime,"yyyy-MM-dd hh:mm:ss")+'</a>';
lis += ' <a>试听记录</a>';
lis += '</span>';
lis += '</p>';
}
});
lis += '</div>';
lis += '</li>';
flows.next(lis, flows.page < total); //调用保存的全局函数
}
});
}
运行结果(成功调用)