MUI 图片懒加载的源码分析

5 篇文章 0 订阅
4 篇文章 0 订阅
今天学习了MUI框架中的图片懒加载的使用,第一次使用比较好奇,然后就想翻出源码来研究研究,下面先上源码:
	huibase.lazyLoadNow = function(className){
		if(!className){className = 'HUI_Lazy';}
		var winInfo = hui.winInfo(), imgs = new Array(), lazyObj = hui('.'+className);
		for(var i = 0; i < lazyObj.length; i++){
			var dom = lazyObj.dom[0], realSrc = dom.getAttribute('lazySrc');
			var setsY = hui.offset(dom);
			if(setsY.top >=  winInfo.height + winInfo.scrollTop){break;}
			dom.src = realSrc;
			hui(dom).removeClass(className);
		}
	};
huibase.lazyLoadNow = function(className){
//建立函数lazyLoadNow,接受一个值(className)
	if(!className){className = 'HUI_Lazy';}
//如果没有传入值,那么className默认为HUI_Lazy

	var winInfo = hui.winInfo(), imgs = new Array(), lazyObj = hui('.'+className)
//定义对象winInfo,imgs,lazyObj并分别赋值 imgs为数组 lazyObj为.className;

	for(var i = 0; i < lazyObj.length; i++){  //for循环
		var dom = lazyObj.dom[0], realSrc = dom.getAttribute('lazySrc');
//创建dom对象,将第一个className为HUI_Lazy的对象赋予它,

		//创建realSrc对象,将lazySrc的属性值赋予它 注:这里的dom.&&.dom 都是讲对象转换为.DOM对象的方法
		var setsY = hui.offset(dom);
		//创建setsY对象,将dom当前的位置赋值给setsY
		if(setsY.top >=  winInfo.height + winInfo.scrollTop){break;}
		//如果setsY的top位置大于等于窗口当前的高度+窗口滚动条当前的顶端位置的值则结束循环
		dom.src = realSrc;
		//那么第一个className为HUI_Laz的对象的src值就等于realSrc
		hui(dom).removeClass(className);
		//选择这个dom移除当前的className
		}
	};



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值