上拉加載對象
阿新 • • 發佈:2019-03-25
error 錯誤 perl turn new 參數 內容 function UNC
/** * 上拉加載對象 * @param param,參數配置對象 * Jpm : 主容器對象,即固定高度可以滾動的 jQuery 對象,默認:$(document) * Jom : 內容容器對象,伸縮高度的 jQuery 對象, 默認:$("body") * rate : 靈敏度,頁面滑動到距離底部多少觸發回調,默認:15 * height: Jpm 所代表的 Dom 對象的高度,默認:屏幕高度 * @param cb,回調函數, 參數攜帶上拉加載對象 * @function,setScroll(isScroll) 當 isScroll 為true時,禁用上拉加載*/ function UpperLoading(param, cb) { if (typeof param != "object") console.error("UpperLoading 初始化參數錯誤"); param.jpm = param.jpm || $(document); param.jom = param.jom || $("body"); param.height = param.height || window.innerHeight; param.rate = param.rate || 15; cb = cb || function() {}; var isScroll = true; param.jpm.bind("scroll", function (ev) { if (isScroll) return; var scroll = param.jpm.scrollTop(); if (scroll + param.height > param.jom.height() - param.rate) { isScroll = true; cb(this); } }.bind(this)); this.setScroll = function (b) { isScroll = b }; cb(this); }
函數調用:
var up = new UpperLoading({ jom: $("#main"), rate: 50 },function(self){ $(".loading").show(); $(".loading").html("加載中,請稍候…"); setTimeout(function(){ for(var i=0;i<vm.pageSize;i++){ vm.dataList = vm.dataList.concat({"name":"這是測試數據"}); } self.setScroll(false); $(".loading").hide(); },2000); // $(".loading").html("上拉加載更多"); });
上拉加載對象