最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript瀑布流式圖片懶加載實(shí)例

 更新時(shí)間:2020年06月28日 09:17:49   投稿:lijiao  
這篇文章主要為大家詳細(xì)介紹了javascript瀑布流式圖片懶加載實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近項(xiàng)目使用到了“懶加載”,現(xiàn)在更新一般,因?yàn)槠綍r(shí)主要使移動(dòng)端的開(kāi)發(fā)所以庫(kù)文件使用的是zepto.js 。當(dāng)然也可以和jQuery 通用。

代碼如下:

/**
 * Created by zhiqiang on 2015/10/14.
 * hpuhouzhiqiang@gmail.com
 * 圖片的懶加載
 **/
function loadImgLazy(node) {
 var lazyNode = $('[node-type=imglazy]', node),
 mobileHeight, lazyOffSetHeight, tempHeight, currentNodeTop, imgObject,
 imgDataSrc, localUrl;

 localUrl = location.href;
 // 獲取當(dāng)前瀏覽器可視區(qū)域的高度
 mobileHeight = $(window).height();

 return function(co) {

 var conf = {
 'loadfirst': true,
 'loadimg': true
 };

 for (var item in conf) {
 if (item in co) {
 conf[item] = co[item];
 }
 }

 var that = {};
 var _this = {};
 /**
 * [replaceImgSrc 動(dòng)態(tài)替換節(jié)點(diǎn)中的src]
 * @param {[type]} tempObject [description]
 * @return {[type]} [description]
 */
 _this.replaceImgSrc = function(tempObject) {
 var srcValue;

 $.each(tempObject, function(i, item) {
 imgObject = $(item).find('img[data-lazysrc]');
 imgObject.each(function(i) {
  imgDataSrc = $(this).attr('data-lazysrc');
  srcValue = $(this).attr('src');
  if (srcValue == '#') {
  if (imgDataSrc) {
  $(this).attr('src', imgDataSrc);
  $(this).removeAttr('data-lazysrc');
  }
  }
 });
 });
 };

 /**
 * 首屏判斷屏幕上是否出現(xiàn)imglazy節(jié)點(diǎn),有的話就加載圖片
 * @param {[type]} i) {  currentNodeTop [description]
 * @return {[type]} [description]
 */
 _this.loadFirstScreen = function() {
 if (conf.loadfirst) {
 lazyNode.each(function(i) {
  currentNodeTop = $(this).offset().top;
  if (currentNodeTop < mobileHeight + 800) {
  _this.replaceImgSrc($(this));
  }
 });
 }
 };

 //當(dāng)加載過(guò)首屏以后按照隊(duì)列加載圖片
 _this.loadImg = function() {
 if (conf.loadimg) {
 $(window).on('scroll', function() {
  var imgLazyList = $('[node-type=imglazy]', node);
  for (var i = 0; i < 5; i++) {
  _this.replaceImgSrc(imgLazyList.eq(i));
  }
 });
 }
 };

 that = {
 replaceImgSrc: _this.replaceImgSrc(),
 mobileHeight: mobileHeight,
 objIsEmpty: function(obj) {
 for (var item in obj) {
  return false;
 }
 return true;
 },
 destory: function() {
 if (_this) {
  $.each(_this, function(i, item) {
  if (item && item.destory) {
  item.destory();
  }
  });
  _this = null;
 }
 $(window).off('scroll');
 }
 };
 return that;
 };
}

希望本文對(duì)大家學(xué)習(xí)javascript圖片懶加載有所幫助。

相關(guān)文章

  • html中通過(guò)JS獲取JSON數(shù)據(jù)并加載的方法

    html中通過(guò)JS獲取JSON數(shù)據(jù)并加載的方法

    本篇內(nèi)容主要給大家講了如何通過(guò)javascript解析JSON并得到數(shù)據(jù)后添加到HTML中的方法,需要的朋友參考下。
    2017-11-11
  • 在Vue.js中使用Mock數(shù)據(jù)的詳細(xì)教程與技巧

    在Vue.js中使用Mock數(shù)據(jù)的詳細(xì)教程與技巧

    這篇文章主要介紹了在Vue.js項(xiàng)目中設(shè)置和使用Mock數(shù)據(jù)的方法,Mock數(shù)據(jù)在前端開(kāi)發(fā)、單元測(cè)試和調(diào)試中非常有用,可以通過(guò)使用axios進(jìn)行數(shù)據(jù)請(qǐng)求,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • Js實(shí)現(xiàn)京東無(wú)延遲菜單效果實(shí)例(demo)

    Js實(shí)現(xiàn)京東無(wú)延遲菜單效果實(shí)例(demo)

    本篇文章主要介紹了Js實(shí)現(xiàn)京東無(wú)延遲菜單效果實(shí)例(demo) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表

    JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表

    這篇文章主要介紹了JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表,本文分別講解了單鏈表與雙鏈表以及增加節(jié)和刪除節(jié)的代碼實(shí)例,需要的朋友可以參考下
    2015-06-06
  • webpack配置打包后圖片路徑出錯(cuò)的解決

    webpack配置打包后圖片路徑出錯(cuò)的解決

    本篇文章主要介紹了webpack配置打包后圖片路徑出錯(cuò)的解決,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Bootstrap表單Form全面解析

    Bootstrap表單Form全面解析

    在進(jìn)行自己的后臺(tái)改版時(shí),大體布局都使用了bootstrap,剩下的表單部分沒(méi)理由不去使用它,對(duì)于表單的美化和布局,bootstrap做的也是很不錯(cuò)的。下文給大家介紹Bootstrap表單Form全面解析,感興趣的朋友一起看下吧
    2016-06-06
  • JSON.parse處理非標(biāo)準(zhǔn)Json數(shù)據(jù)出錯(cuò)的解決

    JSON.parse處理非標(biāo)準(zhǔn)Json數(shù)據(jù)出錯(cuò)的解決

    這篇文章主要介紹了JSON.parse處理非標(biāo)準(zhǔn)Json數(shù)據(jù)出錯(cuò)的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • web性能優(yōu)化之javascript性能調(diào)優(yōu)

    web性能優(yōu)化之javascript性能調(diào)優(yōu)

    本文詳細(xì)介紹Web 開(kāi)發(fā)中關(guān)于性能方面需要注意的一些小細(xì)節(jié),從 JavaScript 本身著手,介紹了 JavaScript 中需要避免的一些函數(shù)的使用和編程規(guī)則,比如 eval 的弊端,function scope chain 以及 String 的用法等等
    2012-12-12
  • JavaScript取得gridview中獲取checkbox選中的值

    JavaScript取得gridview中獲取checkbox選中的值

    這篇文章主要介紹了 js取得gridview中獲取checkbox選中的值,本文給大家分享兩段代碼片段,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-07-07
  • 原生JS中slice()方法和splice()區(qū)別

    原生JS中slice()方法和splice()區(qū)別

    slice()方法和splice()方法都是原生js中對(duì)數(shù)組操作的方法。那么他兩種有什么區(qū)別呢?今天通過(guò)本文教程給大家簡(jiǎn)單介紹下,需要的朋友可以參考下
    2017-03-03

最新評(píng)論

抚远县| 安福县| 古丈县| 屏山县| 开原市| 河源市| 额敏县| 西吉县| 惠安县| 福海县| 阿拉善右旗| 沙田区| 宝坻区| 阳城县| 巨野县| 泾川县| 朝阳区| 长宁县| 浪卡子县| 镇赉县| 灯塔市| 宜丰县| 荔波县| 桃园县| 宝清县| 敖汉旗| 邯郸县| 白城市| 手机| 聂荣县| 平谷区| 广西| 鄂伦春自治旗| 江油市| 茌平县| 乡城县| 新密市| 阿城市| 那曲县| 驻马店市| 遵义市|