博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图片加载问题
阅读量:4980 次
发布时间:2019-06-12

本文共 1685 字,大约阅读时间需要 5 分钟。

眼下比较常用的图片延迟加载技术有四种:kissy(淘宝的JS框架),Jquery 图片延迟插件,Prototype,YUI2。

一、使用JQuery插件 ,插件名: jquery.lazyload(7kb大小),压缩后(3kb大小):

1.导入JS插件

<script src="http://jianzi0307.blog.163.com/blog/jquery.js" type="text/javascript"></script>

<script src="http://jianzi0307.blog.163.com/blog/jquery.lazyload.js" type="text/javascript"></script>

2.在你的页面中加入如下的javascript:

$("img").lazyload();

这将会使所有的图片都延迟加载。

当然插件还有几个配置项可供设置:

1.改变threshold

$(“img”).lazyload({ threshold : 200 });

把阀值设置成200 意思就是当图片没有看到之前先load 200像素。

2.当然了你也可以通过设置占位符图片和自定事件来触发加载图片事件

复制代码

代码如下:

$("img").lazyload({

placeholder : "img/grey.gif",

event : "click"

});

3.可以通过定义effect 参数来定义一些图片显示效果

复制代码

代码如下:

$("img").lazyload({

placeholder : "img/grey.gif",

effect : "fadeIn"

});

LazyLoad(延迟加载)技术不仅仅用在对网页中图片的延迟加载,对数据同样可以,Google Reader和Bing图片搜索就把LazyLoad技术运用的淋漓尽致;

缺陷:

1.与Ajax技术的冲突;

2.图片的延迟加载,遇到高度特别高的图片,会出现停止加载的问题;

3.写代码不规范的同学要注意了,不管由于什么原因,如果您的页面中,img标签的height属性未定义,那么我建议您最好不要使用ImageLazyLoad

二、使用淘宝的延迟加载技术:(2kb大小)

调用方法也是很简单的:

<script src="" type="text/javascript"></script> <script type="text/javascript">// <![CDATA[KISSY.ImageLazyload();//]]></script>

注:该脚本依赖 yahoo-dom-event, 页面中需要加载 yui 2.x,你也可以直接引用下面的地址:

<script src="" type="text/javascript"></script>

配置参数如下:

<script type="text/javascript">

KISSY.ImageLazyload({

mod: "manual", // 延迟模式。默认为 auto

diff: 200 // 当前屏幕下多远处的图片开始延迟加载。默认两屏外的图片才延迟加载

});

</script>

manual 模式时,需要手动将页面中需要延迟加载的图片的 src 属性名更改为 data-lazyload-src. 比如 SRP 页面,宝贝列表的后20个图片延迟加载。 输出时,html 代码为:

<img data-lazy-src="http://jianzi0307.blog.163.com/blog/path/to/img" alt="something" />

如果您是Jquery,Prototype等这些JS框架的粉丝,他们都有定制的LazyLoad Plugin提供:

LazyLoad(延迟加载)技术不仅仅用在对网页中图片的延迟加载,对数据同样可以。

转载于:https://www.cnblogs.com/sg1991/p/4065075.html

你可能感兴趣的文章
Java回顾之多线程
查看>>
2018 Multi-University Training Contest 10 - Count
查看>>
HDU6203 ping ping ping
查看>>
Fireworks基本使用
查看>>
Java基础常见英语词汇
查看>>
nginx启动、关闭命令、重启nginx报错open() "/var/run/nginx/nginx.pid" failed
查看>>
UINavigationController的视图层理关系
查看>>
组件:slot插槽
查看>>
Nginx配置文件nginx.conf中文详解(转)
查看>>
POJ 1308 Is It A Tree?(并查集)
查看>>
N进制到M进制的转换问题
查看>>
php PDO (转载)
查看>>
[置顶] 一名优秀的程序设计师是如何管理知识的?
查看>>
highcharts 图表实例
查看>>
highcharts曲线图
查看>>
extjs动态改变样式
查看>>
宏定义
查看>>
笔记:git基本操作
查看>>
生成php所需要的APNS Service pem证书的步骤
查看>>
HOT SUMMER 每天都是不一样,积极的去感受生活 C#关闭IE相应的窗口 .
查看>>