屏幕滚动到图片当前位置加载图片,把图片的真实地址写到data-src属性里即可。

<img src="占位图" data-src="img/foot.jpg" />

  

;(function(){
/*
图片预加载
@author liuming
@demo $('img[data-src]').ImgLoading();
*/
$.fn.ImgLoading=function(){
var aImgs = [],/*缓存图片列表*/
$win = $(window),
img,imgTop,
winH = $win.height(),
Timmer=null,
i,
scrollTop; $.each($(this),function(){
aImgs.push(this);
}); $win.bind('load scroll.ImgLoading',function(){
if(Timmer){clearTimeout(Timmer);}
Timmer = setTimeout(eachImg,100);
}); function eachImg(){
/*数组为空 清除事件*/
if(aImgs.length==0){return $win.unbind('scroll.ImgLoading');}
scrollTop = $win.scrollTop();
for(i=aImgs.length-1; i>-1; i--){
img = $(aImgs[i]);
imgTop = img.offset().top;
/*判断图片正在屏幕中 */
if(scrollTop+winH > imgTop && scrollTop<imgTop+winH){
img.attr('src',img.attr('data-src'));
aImgs.splice(i,1);
}
}
} } })(); $('img[data-src]').ImgLoading();

  

【JQuery Zepto插件】图片预加载的更多相关文章

  1. 转载:用Jquery实现的图片预加载技术,可以实现有序加载和无序加载!

    一.背景 我们在做页面的时候,从用户体验的角度出发,肯定是希望用户以最快的速度看到完整的页面信息,但在实际情况中经常会遇到些问题. 比如受网速影响,页面加载素材的时间比较长,页面会出现短时间的错乱或者 ...

  2. jQuery简单实现图片预加载

    我们在做网站的时候经常会遇到这样的问题:一个页面有大量的图片导致页面加载速度缓慢,经常会出现一个白页用户体验很不好.那么如何解决这个问题呢?下面我来介绍一种在实际应用中经常会使用到的js预加载的方法. ...

  3. jquery.imgpreload.min.js插件实现页面图片预加载

    页面分享地址: http://wenku.baidu.com/link?url=_-G8miwbgDmEj6miyFtjit1duJggBCJmFjR2jky_G1VftD9eS9kwGOlFWAOR ...

  4. 闭包,jQuery插件的写法:图片预加载

    最近做的一些网页,单个网页图片量都比较大,网络不好的情况下,特别卡,这个图片预加载的方法可以牺牲一些时间换来网页的浏览顺畅,还是值得的. //闭包的写法,它内部的变量都是局部的,不会和外部巳有的变量进 ...

  5. 图片预加载的插件使用-jquery.imgpreload.min.js

    使用方法: //图片预加载 var the_images = [];//新建一个数组,然后将要加载的图片地址推入这个数组中: the_images.push( 'bg.jpg' ); var load ...

  6. JQ封装图片预加载插件

    我们知道,图片的加载,特别是资源较大的图片,加载相当耗费时间.为了提高用户体验,不得不使用图片预加载技术来提前加载,以提高用户在浏览时的流畅度. 先来弄明白图片的懒加载和预加载的不同: 1)概念:懒加 ...

  7. 图片预加载插件 preLoad.js

    1.preLoad.js插件 /*! * preLoad.js v1.0 * (c) 2017 Meng Fangui * Released under the MIT License. */ (fu ...

  8. jquery实现图片预加载

    使用jquery实现图片预加载提高页面加载速度和用户体,本就为大家详细分析jquery图片预加载的实现原理. 什么时候使用图片预加载? 如果页面使用了很多不是最初加载便可见的图片,有必要进行预加载: ...

  9. jquery实现图片预加载提高页面加载速度

    使用jquery实现图片预加载提高页面加载速度和用户体 我们在做网站的时候经常会遇到这样的问题:一个页面有大量的图片导致页面加载速度缓慢,经常会出现一个白页用户体验很不好.那么如何解决这个问题 呢?首 ...

随机推荐

  1. 超炫酷的 Docker 终端 UI lazydocker

    A simple terminal UI for both docker and docker-compose, written in Go with the gocui library. https ...

  2. Maven 异常 druid jar冲突

    异常: 十二月 25, 2017 11:04:41 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropert ...

  3. 服务器上build.xml文件乱码解决(亲测有效)

    前提条件:必须root账户登录系统,否则无权限 1. 修改/etc/sysconfig/i18n: 拷贝如下内容到文件中 #LANG="zh_CN.UTF-8" LANG=&quo ...

  4. python中的zip函数的使用

    >>> x = [, , ] >>> y = [, , ] >>> z = [, , ] >>> xyz = list(zip( ...

  5. [WC2010]重建计划(长链剖分版)

    传送门 Description Solution 时隔多年,补上了这题的长链剖分写法 感觉比点分治要好写的多 我们假设\(pos\)是当前点的\(dfn\),它距离所在链的底端的边的数量是\(len\ ...

  6. Java 产生随机数并写入txt文档中

    源代码: import java.io.*; import java.util.Random; public class AlgorithmTest { public static void main ...

  7. LeetCode之打家劫舍

    1. 问题 在一条直线上,有n个房屋,每个房屋中有数量不等的财宝,有一个盗 贼希望从房屋中盗取财宝,由于房屋中有报警器,如果同时从相邻的两个房屋中盗取财宝就会触发报警器.问在不触发报警器的前提下,最多 ...

  8. 【洛谷】P3177 [HAOI2015]树上染色

    懒得复制题面了直接传送门吧 分析 直接求点与点之间的距离感觉不是很好求,所以我们考虑换一个求法. 瞄了一眼题解 距离跟路径上边的长度有关,所以我们直接来看每一条边的贡献吧(这谁想得到啊) 对于每一条边 ...

  9. python 设计模式学习代码记录

    @工厂模式class Beijing: def printreslut(self): print("ok") class Shanghai: def printreslut(sel ...

  10. 第07组 Alpha冲刺(1/6)

    队长:杨明哲 组长博客:求戳 作业博客:求再戳 队长:杨明哲 过去两天完成了哪些任务 文字/口头描述:完成了,网页后端的大部分工作.负责了很大一部分的后端工作. 展示GitHub当日代码/文档签入记录 ...