关于javascript延迟加载图片

今天在技术群中,有位童鞋问起了javascript延迟加载图片的问题,我在这就给大家说明下原理和实现方法。 延迟加载是通过自定义属性,把真实的img地址存到自定义属性中,如data-url=”img”,而图片真正的src存的是loading的图片,如src=”loading.gif”,通过JS来获取窗口的偏移量,当图片在窗口中的时候,再动态将data-url的值赋给src; 延迟加载的原理其实很简单的,因为浏览器解析html的时候,会把img中所有的src都加载,但是自定义属性中的图片是不会加载的,所有我们就采用了替换,这样浏览器刚打开页面加载的是loading的图标,而不是真正的图片,这样就能提高网站的加载速度。 实际项目应用中,可以先利用ajax先把图片的实际src赋给data-url,然后滚动带图片窗口时,在实时的替换img的src。

时间: 2024-10-31 08:48:56

关于javascript延迟加载图片的相关文章

前端学习 第七弹: Javascript实现图片的延迟加载

前端学习 第七弹: Javascript实现图片的延迟加载 为了实现图片进入视野范围才开始加载首先: <img    src="" x-src="/acsascasc.jpg"> 这时src是空的没有加载图片 $(window).scroll(function (){ $("img").each(function(){ if ($(this).src == ""){ if ( ($(this).offset().t

Lazy Load, 延迟加载图片的 jQuery 插件 - NeoEase

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

Lazy Load, 延迟加载图片的 jQuery 插件

本文翻译自 Lazy Load Plugin for jQuery, 介绍一个 jQuery 插件, 它提供懒汉式加载页面图片的功能. Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预加载的处理方式正好是相反的. 在包含很多大图片长页面中延迟加载图片可以加快页面加载速度. 浏览器将会在加载可见图片之后即进入就绪状态. 在某些情况下还可以帮助降低服

延迟加载图片插件LazyLoad.js的使用方法

我们常常会见到很多网页的图片并不是一打开页面就全部加载的,而是浏览到当前的图片位置才显示出来.这是怎么实现出来的呢? 其实这就是目前较为流行的“延迟加载”(Lazy Load)技术,灵感来自Matt Mlinac制作的YUI ImageLoader工具箱. 后来就形成了一个比较完整的jQuery插件:jquery.lazyload.js . 下面就介绍一下jquery.lazyload.js的使用方法: Lazy Load 依赖于 jQuery. 请将下列代码加入页面 head 区域: <scr

Lazyr.js – 延迟加载图片(Lazy Loading)

Lazyr.js 是一个小的.快速的.现代的.相互间无依赖的图片延迟加载库.通过延迟加载图片,让图片出现在(或接近))视窗才加载来提高页面打开速度.这个库通过保持最少选项并最大化速度. 在线演示      源码下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特效 Web 开发中很实用的10个效果[源码下载] 12款经典的白富美型 jQuery 图片轮播插件 本文链接

Lazy Load延迟加载图片效果

前些日子自己想搞个延时加载的玩玩,但js自己是不会写的,只有上网找插件了.在网上找了好多,都比较坑爹!为什么呢?大部分文章都是他妹的一篇不停的转载,这地方省一点那地方省一点.你说你转载就算了,保留原出处链接也行啊,这样也方便大家可以有更大的收获.但事实上是什么样子,我也就不多说了,我相信上网查过资料的亲都有过感受.在网上找了好久,最终还是有收获的.自己弄了几个小时后,终于折腾出来了.下面献上自己整理的源码,大神喷时还请手留情.先附一张效果图: css样式: .lazy{width:400px;h

Lazy Load, 延迟加载图片的 jQuery 插件(转)

Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预加载的处理方式正好是相反的. 在包含很多大图片长页面中延迟加载图片可以加快页面加载速度. 浏览器将会在加载可见图片之后即进入就绪状态. 在某些情况下还可以帮助降低服务器负担. Lazy Load 灵感来自 Matt Mlinac 制作的 YUI ImageLoader 工具箱. 这是演示页面. 这里

使用JavaScript判断图片是否加载完成的三种实现方式

有时需要获取图片的尺寸,这需要在图片加载完成以后才可以.有三种方式实现,下面一一介绍. 一.load事件 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>img - load event</title> </head> <body> <img id="img1" src="http:/

Javascript 将图片的绝对路径转换为base64编码

Javascript将图片的绝对路径转换为base64编码 我们可以使用canvas.toDataURL的方法将图片的绝对路径转换为base64编码:在这我们引用的是淘宝首页一张图片如下: var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg"; 我们如下编写代码: function getBase64Image(img) { var canvas = document.create