Giter Club home page Giter Club logo

lazy-load-img's Introduction

npm npm

安装

  npm install lazy-load-img --save

优势

1.原生js开发,不依赖任何框架或库
2.支持将各种宽高不一致的图片,自动剪切成默认图片的宽高
  比如说你的默认图片是一张正方形的图片,则各种宽度高度不一样的图片,自动剪切成正方形。
  完美解决移动端开发中,用户上传图片宽高不一致而导致的图片变形的问题
3.简洁的API,让你分分钟入门!!!

默认模式

  var lazyLoadImg = new LazyLoadImg({
      el: document.querySelector('#list'),
      mode: 'default', //默认模式,将显示原图,diy模式,将自定义剪切,默认剪切居中部分
      time: 300, // 设置一个检测时间间隔
      done: true, //页面内所有数据图片加载完成后,是否自己销毁程序,true默认销毁,false不销毁
      position: { // 只要其中一个位置符合条件,都会触发加载机制
          top: 0, // 元素距离顶部
          right: 0, // 元素距离右边
          bottom: 0, // 元素距离下面
          left: 0 // 元素距离左边
      },
      before: function () {

      },
      success: function (el) {
          el.classList.add('success')
      },
      error: function (el) {
          el.src = './images/error.png'
      }
  })
  
  // lazyLoadImg.start() // 重新开启懒加载程序
  // lazyLoadImg.destroy() // 销毁图片懒加载程序

效果演示

demo

自定义模式

  var lazyLoadImg = new LazyLoadImg({
      el: document.querySelector('#list'),
      mode: 'diy', //默认模式,将显示原图,diy模式,将自定义剪切,默认剪切居中部分
      time: 300, // 设置一个检测时间间隔
      done: true, //页面内所有数据图片加载完成后,是否自己销毁程序,true默认销毁,false不销毁
      position: { // 只要其中一个位置符合条件,都会触发加载机制
          top: 0, // 元素距离顶部
          right: 0, // 元素距离右边
          bottom: 0, // 元素距离下面
          left: 0 // 元素距离左边
      },
      diy: { //设置图片剪切规则,diy模式时才有效果
          backgroundSize: 'cover',
          backgroundRepeat: 'no-repeat',
          backgroundPosition: 'center center'
      },
      before: function () {

      },
      success: function (el) {
          el.classList.add('success')
      },
      error: function (el) {
          el.src = './images/error.png'
      }
  })

  // lazyLoadImg.start() // 重新开启懒加载程序
  // lazyLoadImg.destroy() // 销毁图片懒加载程序

效果演示

demo

lazy-load-img's People

Contributors

lzxb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lazy-load-img's Issues

[移动端]页面加载后,第一屏图片不加载呢,要动一下才行的

如题,【手机端】我做了一个横向的tab,类似于网易新闻,在切换时,下面的列表里面的图片,第一屏的图片不能马上加载,要点击下屏幕或者滑动一下,才会加载。

我是通过模板异步加载的列表,在【电脑端】也不行的,必须要动一下,才执行哦~~

结合swiper使用的时候出现问题

移动端用swiper做了个轮播图,轮播图下面有一个的图片列表使用了这个插件,但是当先初始化swiper,后初始化该插件时,结果swiper的自动轮播失效。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.