ssm41471/src/main/webapp/front/components/mescroll-uni/mescroll-uni.js

(开头部分) 29KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

/* mescroll-uni
 * version 1.1.8
 * 2019-11-01 wenju
 * http://www.mescroll.com
 */

export default function MeScroll(options) {
	let me = this;
	me.version = '1.1.8'; // mescroll版本号
	me.options = options || {}; // 配置

	me.isDownScrolling = false; // 是否在执行下拉刷新的回调
	me.isUpScrolling = false; // 是否在执行上拉加载的回调
	let hasDownCallback = me.options.down && me.options.down.callback; // 是否配置了down的callback

	// 初始化下拉刷新
	me.initDownScroll();
	// 初始化上拉加载,则初始化
	me.initUpScroll();

	// 自动加载
	setTimeout(function() { // 待主线程执行完毕再执行,避免new MeScroll未初始化,在回调获取不到mescroll的实例
		// 自动触发下拉刷新 (只有配置了down的callback才自动触发下拉刷新)
		if (me.optDown.use && me.optDown.auto && hasDownCallback) {
			if (me.optDown.autoShowLoading) {
				me.triggerDownScroll(); // 显示下拉进度,执行下拉回调
			} else {
				me.optDown.callback && me.optDown.callback(me); // 不显示下拉进度,直接执行下拉回调
			}
		}
		// 自动触发上拉加载
		me.optUp.use && me.optUp.auto && !me.isUpAutoLoad && me.triggerUpScroll();
	}, 30); // 需让me.optDown.inited和me.optUp.inited先执行
}

/* 配置参数:下拉刷新 */
MeScroll.prototype.extendDownScroll = function(optDown) {
	// 下拉刷新的配置
	MeScroll.extend(optDown, {
		use: true, // 是否启用下拉刷新; 默认true
		auto: true, // 是否在初始化完毕之后自动执行下拉刷新的回调; 默认true
		autoShowLoading: false, // 如果设置auto=true(在初始化完毕之后自动执行下拉刷新的回调),那么是否显示下拉刷新的进度; 默认false
		isLock: false, // 是否锁定下拉刷新,默认false;
		offset: 80, // 在列表顶部,下拉大于80px,松手即可触发下拉刷新的回调
		startTop: 100, // scroll-view滚动到顶部时,此时的scroll-top不一定为0, 此值用于控制最大的误差
		fps: 40, // 下拉节流 (值越大每秒刷新频率越高)
		inOffsetRate: 1, // 在列表顶部,下拉的距离小于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉
		outOffsetRate: 0.2, // 在列表顶部,下拉的距离大于offset时,改变下拉区域高度比例;值小于1且越接近0,高度变化越小,表现为越往下越难拉
		bottomOffset: 20, // 当手指touchmove位置在距离body底部20px范围内的时候结束上拉刷新,避免Webview嵌套导致touchend事件不执行
		minAngle: 45, // 向下滑动最少偏移的角度,取值区间  [0,90];默认45度,即向下滑动的角度大于45度则触发下拉;而小于45度,将不触发下拉,避免与左右滑动的轮播等组件冲突;
		textInOffset: '下拉刷新', // 下拉的距离在offset范围内的提示文本
		textOutOffset: '释放更新', // 下拉的距离大于offset范围的提示文本
		textLoading: '加载中 ...', // 加载中的提示文本
		inited: null, // 下拉刷新初始化完毕的回调
		inOffset: null, // 下拉的距离进入offset范围内那一刻的回调
		outOffset: null, // 下拉的距离大于offset那一刻的回调
		onMoving: null, // 下拉过程中的回调,滑动过程一直在执行; rate下拉区域当前高度与指定距离的比值(inOffset: rate<1; outOffset: rate>=1); downHight当前下拉区域的高度
		beforeLoading: null, // 准备触发下拉刷新的回调: 如果return true,将不触发showLoading和callback回调; 常用来完全自定义下拉刷新, 参考案例【淘宝 v6.8.0】
		showLoading: null, // 显示下拉刷新进度的回调
		afterLoading: null, // 准备结束下拉的回调. 返回结束下拉的延时执行时间,默认0ms; 常用于结束下拉之前再显示另外一小段动画,才去隐藏下拉刷新的场景, 参考案例【dotJump】
后面还有 687 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。