详解jQuerylazyload懒加载
Lazy Load 是⼀个⽤ JavaScript 编写的 jQuery 插件. 它可以延迟加载长页⾯中的图⽚. 在浏览器可视区域外的图⽚不会被载⼊,直到⽤户将页⾯滚动到它们所在的位置. 这与图⽚预加载的处理⽅式正好是相反的.
在包含很多⼤图⽚长页⾯中延迟加载图⽚可以加快页⾯加载速度. 浏览器将会在加载可见图⽚之后即进⼊就绪状态. 在某些情况下还可以帮助降低服务器负担.
Demo页⾯:
基本选项
淡⼊效果
对不⽀持JavaScript浏览器的降级处理
⽔平滚动
容器内⽔平滚动
容器内垂直滚动
页⾯内存在N多图⽚
经过五秒钟的延迟后加载图⽚
⽤AJAX来加载图⽚
如何使⽤
Lazy Load 依赖于 jQuery. 请将下列代码加⼊HTML的结尾,也就是</body>前:
<script type="text/javascript" src="jquery.js"></script>
c语言函数大全pdf<script type="text/javascript" src="jquery.lazyload.js"></script>
你必须改变图⽚的标签。图像的地址必须放在data-original属性上。给懒加载图像⼀个特定的class(例如:lazy)。这样你可以很容易地进⾏图像插件捆绑。代码如下:
<img class="lazy" alt="" width="640" height="480" data-original="img/example.jpg" />
$(function() {
$("img.lazy").lazyload();
});
这将使所有 class 为 lazy 的图⽚将被延迟加载.
Demo:基本选项
TIPS:这⾥必须设置图⽚的width和height,否则插件可能⽆法正常⼯作。
设置临界点
默认情况下图⽚会出现在屏幕时加载. 如果你想提前加载图⽚, 可以设置threshold 选项, 设置 threshold 为 200 令图⽚在距离屏幕 200 像素时提前加载.
$("img.lazy").lazyload({
cms导航源码threshold : 200
});
设置事件来触发加载
你可以使⽤jQuery事件,例如click和mouseover。也可以使⽤⾃定义事件,如sporty、foobar默认情况下是要等到⽤户向下滚动并且图像出现在视⼝中时。只有当⽤户点击它们才加载图⽚:
$("img.lazy").lazyload({
event : "click"
});
Demo:经过五秒钟的延迟后加载图⽚
使⽤特效
默认情况下,插件等待图像完全加载并调⽤show()。你可以使⽤任何你想要的效果。下⾯的代码使⽤fadeIn (淡⼊效果)。
Demo:淡⼊效果
$("img.lazy").lazyload({
effect : "fadeIn"
});
针对不启⽤JavaScript的情况
⼏乎所有浏览器的 JavaScript 都是激活的. 然⽽可能你仍希望能在不⽀持 JavaScript 的客户端展⽰真实图⽚. 当浏览器不⽀持JavaScript 时优雅降级, 你可以将真实的图⽚⽚段在写 <noscript> 标签内.
<img class="lazy" data-original="img/example.jpg" width="640" heigh="480">
<noscript><img src="img/example.jpg" width="640" heigh="480"></noscript>
边框素材图片简约高清可以通过 CSS 隐藏占位符.
.lazy {
display: none;
jquery下载文件插件}
java 字符串在⽀持 JavaScript 的浏览器中, 你必须在 DOM ready 时将占位符显⽰出来, 这可以在插件初始化的同时完成.
$("img.lazy").show().lazyload();
图⽚在容器⾥⾯
你可以将插件⽤在可滚动容器的图⽚上, 例如带滚动条的 DIV 元素. 你要做的只是将容器定义为 jQuery 对象并作为参数传到初始化⽅法⾥⾯.
Demo:容器内⽔平滚动, 容器内垂直滚动
当图像不连续时
滚动页⾯的时候, Lazy Load 会循环为加载的图⽚. 在循环中检测图⽚是否在可视区域内. 默认情况下在到第⼀张不在可见区域的图⽚时停⽌循环. 图⽚被认为是流式分布的, 图⽚在页⾯中的次序和 HTML 代码中次序相同. 但是在⼀些布局中, 这样的假设是不成⽴的. 不过你可以通过 failurelimit 选项来控制加载⾏为.
$("img.lazy").lazyload({
failure_limit : 10
});
顺序结构程序设计例题将 failurelimit 设为 10 ,令插件到 10 个不在可见区域的图⽚时才停⽌搜索. 如果你有⼀个猥琐的布局, 请把这个参数设⾼⼀点.
加载隐藏的图⽚
可能在你的页⾯上埋藏可很多隐藏的图⽚. ⽐如插件⽤在对列表的筛选, 你可以不断地修改列表中各条⽬的显⽰状态. 为了提升性能, Lazy Load 默认忽略了隐藏图⽚. 如果你想要加载隐藏图⽚, 请将 skip_invisible 设为 false
$("img.lazy").lazyload({
skip_invisible : false
});
下载插件
最新版本源代码和压缩代码. 插件已经在 OSX 的 Safari 5.1, Safari 6, Chrome 20, Firefox 12 浏览器上, Windows 的 Chrome 20, IE 8 and IE 9 浏览器上, 以及 iOS5 (iPhone 和 iPad) 的 Safari 5.1 浏览器上测试过.
以上就是本⽂的全部内容,希望本⽂的内容对⼤家的学习或者⼯作能带来⼀定的帮助,同时也希望多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论