# readyLoadImg
**Repository Path**: scutephp/readyLoadImg
## Basic Information
- **Project Name**: readyLoadImg
- **Description**: 高清图片延时替换/延时加载图片/预加载图片插件
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2016-01-23
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#readyLoadImg
**一个轻量级的图片预加载/替换库.在页面启动时使用有损压缩后的低质量图片,保证快速的渲染,随后在浏览器无压力时预加载相应图片,预加载完成后进行替换:**
1. 页面默认加载有损压缩图片,如demo-min.png,在dom渲染完成后它们将会被自动替换成高质量图片,而且已经预加载完成,并不会出现卡屏现象
2. css中背景图片也可以通过有损压缩,页面完成后替换.
3. 指定某几张图片延时加载
4. 指定预加载任意的图片数组
5. 你可以通过gulp来批量压缩重命名图片文件(参见demo-gulpFile.js)
**安装readyLoadImg**
你可以下载源文件或通过bower管理工具安装
```
bower install readyLoadImg --save-dev
```
**插件不依赖第三方库,同时支持AMD([requirejs](http://apps.bdimg.com/libs/require.js/2.1.9/require.js))方式引入.**
首先你需要通过'new'来创建一个实例,然后通过start启动:
```
var imgLoad = new readyLoadImg();
imgLoad.start();
```
readyLoadImg()下的参数简单说明:
```
var imgLoad = new readyLoadImg(attrName, srcName, timeOut);
```
- **attrName**: 图片上的标记属性,如```
```.默认为'load-img',如果有冲突可以替换为其他字符串.
- **srcName**: 有损低质量图片与高质量图片命名区别,默认为'-min'.比如你可以将有损图片命名为'demo-min.png',而高质量图片为'demo.png'.
- **timeOut**: 在页面渲染完成后是否需要继续等待,默认为100ms.
背景图片参数:
```
imgLoad.bgToggle(true);
```
- **bgToggle(true)**: 开启此模式后,'load-img'属性可以标记在任意HTML元素上,插件将去寻找它们的背景图片,在预加载完成后将它们逐一替换.
使用gulp打包压缩图片与重命名(具体参见demo-gulpFile.js,需要的服务请先npm install):
```
gulp.task('img', function () {
return gulp.src('images/*.{png,jpg,gif}')
.pipe(imagemin({
optimizationLevel: 7, //取值范围:0-7(优化等级)
progressive: false, //无损
interlaced: true, //隔行扫描
multipass: true, //多次优化svg
svgoPlugins: [{removeViewBox: false}],//SVG-viewbox
use: [pngquant()] //高度压缩
}))
.pipe(rename({ suffix: '-min' }))
.pipe(gulp.dest('test'))
.pipe(notify({ message: 'image task over' }));
})
```
两个简单的使用示例:
```
```
```
```