关于lazyload图片延迟加载简单介绍
LazyLoad大家再熟悉不过的一个jquery插件了,它可以延迟加载长页面中的图片. 也就是说在浏览器可视区域外的图片不会被载入,直到用户将页面滚动到它们所在的位置才会加载并显示出来,这和图片预加载的处理方式正好刚好相反。图片不多的页面时,效果并不太明显,但是当页面大图片比较多的时候,这种效果就比较显著了,明显加快了页面的加载速度。浏览器将会在加载可见图片之后即进入就绪状态,在某些情况下还可以帮助降低服务器负担。
因此,比较流行的wordpress主题,typecho主题,emlog主题等都使用了lazyload图片延迟加载来实现快速加载页面。
当然啦,你的网站纯文字的,就没必要多搞个jquery插件了。
怎样使用lazyload?
其实很简单,只需在你所使用头部<head></head>标签中插入下面一段代码即可,你也可以添加到footer中。
1 |
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery-lazyload/1.9.5/jquery.lazyload.min.js"></script> |
以我的hexo网站和现在使用的next主题举例子,我是习惯把js添加到底部的,找到_layout.swig,路径在your-hexo-site\themes\next\layout,把前面的代码添加到</body>标签前面就OK了。
如果你是hexo其他主题的,找到footer.ejs文件,一般是在themes/你的主题/layout/_partial/路径下,把上述的代码添加进去就行了。
若是使用了wordpress,typecho,emlog等其他博客后台的,也差不多这样改,往你的主题模板</head>或者</body>前上述代码即可,我的typecho网站也是这样实现图片延迟加载的。
如果你希望没看到图片前先加载200px,可以通过设置阀值来控制,具体实现:
1 |
jQuery("img").lazyload({ threshold : 200 });
|
上面代码比较通用,基本满足你的网站图片延迟加载需求。
值得一提的是:
- lazyload依赖jquery,如果你的站点没引用juery,请先引入jquery。
- 在上述代码中,
img是延迟加载所有图片,这里你可以根据不同模板作相应改动。比如我现在使用的next主题,可以改成#posts img,这样更改后,只延迟加载#posts容器内的图片,否则主题侧边的头像和协议图片也跟着延迟加载,等最后才加载出来。所以和我一样使用next主题的最后把jQuery("img")改成jQuery("#posts img")。使用其他模板的根据不同模板实际显示效果自行更改详细例子
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图片加载技术实例-欢迎关注tinyphp的博客</title>
<SCRIPT src="jquery.js" type=text/javascript></SCRIPT>
<SCRIPT src="jquery.lazyload.js" type=text/javascript></SCRIPT>
<script type="text/javascript" charset="utf-8">
$(function() {
$("img").lazyload({
placeholder : "images/loading.gif",
effect: "fadeIn"
});
});
</script>
<style>
img a,img{border:0px;}
div{ margin-bottom:10px;}
</style>
</head>
<body>
<img src="data:images/0.jpg" /><br />
<div><a href="#"><img src="data:images/loading.gif" data-original="images/1.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/2.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/3.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/4.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/5.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/6.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/7.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/8.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/9.jpg"></a></div>
<div><a href="#"><img src="data:images/loading.gif" data-original="images/10.jpg"></a></div>
</body>
</html>
关于lazyload图片延迟加载简单介绍的更多相关文章
- JQuery.lazyload 图片延迟加载
1.引入 jquery.lazyload.js 2. 延时加载的方式 <script type="text/javascript"> $(function() { ...
- BMP、GIF、JPEG、PNG以及其它图片格式简单介绍
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/songjinshi/article/details/37516649 BMP格式 BMP是英文Bit ...
- lazyload 图片延迟加载
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jQuery前端插件以及图片延迟加载
插件名称 用途 插件官网地址 fontawsome CSS图标插件 http://fontawesome.io easyui 基于jQuery的用户界面插件集合 http://www.jeasyui. ...
- JQuery LazyLoad实现图片延迟加载-探究
对于大量图片的网站,图片延迟加载是提高速度和性能的好方法. 目前图片延迟加载主要分两大块,一是触发加载(根据滚动条位置加载图片):二是自动预加载(加载完首屏后n秒后自动加载其他位置的图片).大体常用的 ...
- jquery.lazyload 实现图片延迟加载jquery插件
看到了淘宝产品介绍中,图片是在下拉滚动条时加载,这是一个很不错的用户体验.减少了页面加载的时间了,也减轻了服务器的压力,就查了下用JQuery.. 什么是ImageLazyLoad技术 在页面上图 ...
- jquery.lazyload.js图片延迟加载
转:http://www.jb51.net/article/50273.htm 这篇文章主要介绍了Jquery图片延迟加载插件jquery.lazyload.js的使用方法,需要的朋友可以参考下 ...
- jquery.lazyload.js 图片延迟加载
当做网页的时候,特别是整个网页展示图片较多的时候,用到图片延迟效果是很好的 使用方法也非常简单. 1.在网页任何位置(一般是在</body>前面)加上如下代码(注意<script&g ...
- 前端优化之图片延迟加载(lazyload.js)
要想缩短首屏加载时间,思路一般是减少http请求次数和降低每次的请求量.本文中使用现成的lazyload.js插件,文末会放出下载地址. lazyload.js可以实现图片分批次加载,不是一次性加载完 ...
随机推荐
- 51Nod 1737 配对(树的重心)
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1737 题意: 思路: 树的重心. 树的重心就是其所以子树的最大的子树结点 ...
- MongoDB中的数据聚合工具Aggregate和Group
周煦辰 2016-01-16 来说说MongoDB中的数据聚合工具. Aggregate是MongoDB提供的众多工具中的比较重要的一个,类似于SQL语句中的GROUP BY.聚合工具可以让开发人员直 ...
- hdu4965矩阵快速幂
这题不能直接按常规做啊,因为数组根本就开不下,转换思维A(B*A)^(n*n-1)B 这样的话数组B*A就是10*10了,然后快速幂就行了 刚开始数组都开小了,tle,还找了半天bug...还有就是定 ...
- Java网络编程和NIO详解2:JAVA NIO一步步构建IO多路复用的请求模型
Java网络编程与NIO详解2:JAVA NIO一步步构建IO多路复用的请求模型 知识点 nio 下 I/O 阻塞与非阻塞实现 SocketChannel 介绍 I/O 多路复用的原理 事件选择器与 ...
- 一个n*n 的方格,要从左上角走到右下角,一次只能往右或往下走一步,求算法得出所有走动的方法数。
题目一:一个n*n 的方格,要从左上角走到右下角,一次只能往右或往下走一步,求算法得出所有走动的方法数. 分析:对于第(i,j)个格子,只有向右走一步到达或者向左走一步到达,dp(i,j) = d(i ...
- oracle用户 密码永不过期
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
- (转载)Nginx/LVS/HAProxy三种主流负载均衡软件的对比
原地址:http://www.ha97.com/5646.html PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些 ...
- maven 笔记:maven Could not create the Java Virtual Machine
1.安装好maven,在cmd中运行mvn –v,报错:“maven Could not create the Java Virtual Machine” 2.分析:这是跟jvm有关,在cmd中运行 ...
- 判断对称二叉树 python代码
对称二叉树的含义非常容易理解,左右子树关于根节点对称,具体来讲,对于一颗对称二叉树的每一颗子树,以穿过根节点的直线为对称轴,左边子树的左节点=右边子树的右节点,左边子树的右节点=左边子树的左节点.所以 ...
- 搭建开发环境(React Native)
来源:http://reactnative.cn/docs/0.31/getting-started.html 在GitHub上修改这篇文档 欢迎使用React Native!这篇文档会帮助你搭建基本 ...