延迟加载Javascript/CSS工具:LazyLoad

什么是LazyLoad

LazyLoad是一个很小的,压缩后1.5kb(未使用Gzip压缩)、不依赖的JavaScript实用程序,它使根据需要加载外部JavaScript和CSS文件变得超级容易。

只要有可能,LazyLoad将自动并行加载资源,同时在指定要加载的url数组时确保执行顺序。在不保留异步加载脚本的执行顺序的浏览器中,LazyLoad将安全地按顺序加载脚本。

所有浏览器都支持并行加载CSS。然而,目前只有Firefox和Opera支持并行脚本加载,同时保持执行顺序。为了确保脚本始终以正确的顺序执行,LazyLoad将在除Firefox和Opera之外的其他浏览器中依次加载所有脚本。希望其他浏览器能尽快改进它们的并行脚本加载行为

当您需要一个小型、快速、安全的动态JS或CSS加载器,但不需要依赖管理的开销或大型脚本加载器提供的其他额外功能时,请使用LazyLoad。

下载地址

使用方法

使用LazyLoad很简单。只需调用适当的方法

css():来加载css

js():来加载JavaScript

并传入要加载的URL或URL数组。如果希望在资源完成加载时得到通知,还可以提供回调函数,以及传递给回调的参数和执行回调的上下文。

一、无阻塞的动态加载单个脚本文件

// Load a single JavaScript file and execute a callback when it finishes.
<script type="text/javascript" src="lazyload-min.js"></script><script type="text/javascript">  LazyLoad.js(‘http://example.com/foo.js‘, function () {
    alert(‘foo.js has been loaded‘);
  });</script>

二、无阻塞的动态加载多个脚本文件

要加载多个脚本文件,只需要给LazyLoad.js()方法传入一个url数组

// Load multiple JS files and execute a callback when they‘ve all finished.
<script type="text/javascript" src="lazyload-min.js"></script>
<script type="text/javascript">
    LazyLoad.js([‘foo.js‘, ‘bar.js‘, ‘baz.js‘], function () {
         alert(‘all files have been loaded‘);
    });
</script>

lazyload可以确保在所有浏览器中都以正确的顺序执行,尽管这种无阻塞的方式可以动态的加载很多文件,但是建议尽量减少文件数,因为每次下载仍然是一个独立的HTTP请求,而且回调函数会等待所有文件都下载完成后才会执行

三、动态加载单个css文件

// Load a CSS file and pass an argument to the callback function.
<script type="text/javascript" src="lazyload-min.js"></script>
<script type="text/javascript">
    LazyLoad.css(‘foo.css‘, function (arg) {
          alert(arg);
    }, ‘foo.css has been loaded‘);
</script>

lazyload同样可以动态加载css文件,这没有太大的意义,因为css文件本身就已经是并行下载的,不会阻塞页面的其他进程。

// Load a CSS file and execute the callback in a different scope.
LazyLoad.css(‘foo.css‘, function () {
  alert(this.foo); // displays ‘bar‘
}, null, {foo: ‘bar‘});

浏览器支持

  • Firefox 2+
  • Google Chrome
  • Internet Explorer 6+
  • Opera 9+
  • Safari 3+
  • Mobile Safari
  • Android

其他浏览器可能可以运行,但还没有经过测试。可以肯定的是,任何基于最近版本的Gecko或WebKit的产品都有可能成功。

原文地址:https://www.cnblogs.com/kunmomo/p/12153485.html

时间: 2024-11-09 02:01:35

延迟加载Javascript/CSS工具:LazyLoad的相关文章

JavaScript开发工具大全

译者按: 最全的JavaScript开发工具列表,总有一款适合你! 原文: THE ULTIMATE LIST OF JAVASCRIPT TOOLS 译者: Fundebug 为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用于学习. 简介 2017年1月,Stack Overflow年度开发者调研一共访问了64000个程序员,发现JavaScript已经连续5年成为最流行的编程语言. 这篇博客将介绍一些常用的JavaScript开发工具: 构建&自动化 IDE&

jQuery图片延迟加载插件:jquery.lazyload

----------------------------------------------------------------------------------------------- class='lazy' 载入样式,data-original指向图片地址 底部引入jQuery和jQuery.lazyload.js <img class="lazy" data-original="img/bmw_m1_hood.jpg" width="76

15款很棒的 JavaScript 开发工具

在开发中,借助得力的工具可以事半功倍.今天,我爱互联网向大家分享最新收集的15款非常有用的 javascript 开发工具. TestSwarm: Continious & Distributed JS Testing TestSwarm是Mozilla实验室推出的一个开源项目,它旨在为开发者提供在多个浏览器版本上快速轻松测试自己javascript代码的方法. Minimee在网络上,速度是很重要的,Minimee能帮助你将css和javascript文件进行自动压缩和打包. Doctor J

10个最好用的HTML/CSS 工具、插件和资料库

大家在使用HTML/CSS开发项目的过程中,有使用过哪些工具,插件和库?下面介绍的10种HTML/CSS工具,插件和资料库,是国外程序员经常用到的. Firebug Lite FirebugLite 集成火狐浏览器,让你在浏览的时候便可以轻松地获取丰富的网页开发工具.你可以在任何一个网页中实时编辑.调试和监测CSS,HTML及JavaScript. Web Developer Web Developer (网页开发者) 扩展为浏览器添加了各种开发者工具.扩展可用于Chrome, Firefox和

17款提高编码效率的CSS工具

摘要:作为WEB前端开发人员,你的工作可能很大一部分都在编写CSS代码,为了提高前端开发人员编写CSS代码的效率,编程文库从 网上搜集了17款可以提高你CSS代码效率的CSS工具,它们可以帮助你快速生成CSS菜单.动画影像.按钮.滑块.动画文本.CSS形 状代码.全文请看:17款提高编码效率的CSS工具. 不用介绍,软件开发界的“地球人”都知道CSS,因为它是最流行的一种样式设计语言.学习和使用CSS已经不再是一件棘手的事,因为在网上可以获得很多信息教程和CSS工具.这些工具有助于你创造出有用的

9个最好用的JavaScript开发工具和代码编辑器

Web设计和开发是现今越来越流行的职业方向之一.工欲善其事,必先利其器,如果你想在这个领域出类拔萃,那么你就必须具备一些优秀的技能,例如能操作不同的平台.IDE和其他各种各样的工具. 谈到平台和IDE,现在已经不是以前那个掌握一个IDE就能"一招鲜吃遍天"的时代了.激烈的竞争以及蔓延到现在的集成开发环境.基于IDE是用于创建和部署应用程序的强大客户端应用程序,下面我们要分享的就是对于很多网页设计师和开发人员而言,最好的JavaScript 开发工具. 1)Spket Spket IDE

css工具收集

收集一些css的生成工具,开发中可以直接拿过来用.特别是那些css3中的一些新的特性. 1  css渐变背景在线生成工具      http://www.colorzilla.com/gradient-editor/ 2  css3圆角在线生成工具      http://border-radius.com/ 3  网格布局在线生成工具     http://grid.mindplay.dk/ 持续更新...... 大家如果有用的好的前台工具给留言推荐下,我收集补充下.谢谢. css工具收集,布

2014 年 20 款最好的 CSS 工具

说到 WEB 设计,不得不介绍介绍 CSS 工具,CSS 工具在这里面扮演很重要的角色,可以简化无数开发者和设计师的工作,写出更好的 CSS 代码. 而网上有非常多的 CSS 工具,帮助设计师和开发者高效的工作和进行更多创新的创作,设计师和 web 开发者也把越来越多的 CSS 工具收入为自身的开发和设计利器. 在这篇文章中,我们罗列了 2014 年最好的 20 款 CSS 工具,希望能帮助大家简化自己的开发工作,创作出更多更好的创新作品.Enjoy! 1. Enjoy CSS 2. Keyfr

Tracker 是一个运行于浏览器书签栏的 JavaScript 嗅探工具,她将被启动于其他网页之后,为了协助您了解目标网页中 JavaScript 的运行情况

1 概述 Tracker 是一个运行于浏览器书签栏的 JavaScript 嗅探工具,她将被启动于其他网页之后,为了协助您了解目标网页中 JavaScript 的运行情况,包括:执行覆盖率.执行行数.是否存在执行或语法错误等信息,当你对一个目标网页使用 Tracker,该网页的上方将加载进来一个 Tracker 导航栏. 不用安装,快速开始 也欢迎体验桌面客户端版 Tracker 是一个运行于浏览器书签栏的 JavaScript 嗅探工具,她将被启动于其他网页之后,为了协助您了解目标网页中 Ja