知道LABJS这个概念其实早于sea.js,但因为sea.js是中文,并且第一眼就喜欢上sea.js的CommonJS所以并没有深入了解过LABJS。
在 使用sea.js的时候不可避免的碰到js文件依赖问题,这时候才想起不到5k的LABJS来,看过手册之后俺不禁怀疑“有必要sea.js和labjs 一起使用么”,或许俺等到sea.js可以支持文件加载顺序之后再回到sea.js的怀抱?除了看起来美观和支持css外,没看到sea.js有什么更大 的优势,原有项目迁移到labjs上比迁移到sea.js上成本要小很多,而且labjs比sea.js小了近一半…
介绍下LABJS的几个实例:
实例1:
|
$LAB
.script( "script1.js" )
.script( "script2.js" )
.script( "script3.js" )
.wait( function (){
script1Func();
script2Func();
script3Func();
});
|
实例2:
1
2
3
4
5
6
7
8
9
|
$LAB
.script({ src: "script1.js" , type: "text/javascript" })
.script( "script2.js" )
.script( "script3.js" )
.wait( function (){
script1Func();
script2Func();
script3Func();
});
|
实例3:
1
2
3
4
5
6
7
|
$LAB
.script( "script1.js" , "script2.js" , "script3.js" )
.wait( function (){
script1Func();
script2Func();
script3Func();
});
|
实例4:
1
2
3
4
5
6
7
|
$LAB
.script( [ "script1.js" , "script2.js" ], "script3.js" )
.wait( function (){
script1Func();
script2Func();
script3Func();
});
|
实例5:
1
2
3
4
5
6
|
$LAB
.script( "script1.js" ).wait()
.script( "script2.js" )
.script( "script3.js" ).wait()
.script( "script4.js" )
.wait( function (){script4Func();});
|
实例6:
1
2
3
4
5
6
7
8
9
|
$LAB
.script( "script1.js" )
.script( "script2.js" )
.script( "script3.js" )
.wait( function (){
alert( "Scripts 1-3 are loaded!" );
})
.script( "script4.js" )
.wait( function (){script4Func();});
|
实例7:
1
2
3
4
5
6
7
|
$LAB
.setOptions({AlwaysPreserveOrder:true})
.script( "script1.js" )
.script( "script2.js" )
.script( "script3.js" )
.script( "script4.js" )
.wait( function (){script4Func();});
|
实例8:
1
2
3
4
5
6
7
8
9
10
11
12
|
$LAB
.script( function (){
if (_is_IE) {
return "ie.js" ;
}
else {
return null;
}
})
.script( "script1.js" )
.wait();
|
分享到:
相关推荐
开源无阻塞脚本加载工具LABjs。该工具提供了对加载过程更精细的控制,并试图同时下载尽可能多的代码。
LABjs-2.0.3
LAB.js解决ajax异步--js加载顺序不能自定义的问题,有实例。
前端项目-labjs,labjs(加载和阻塞javascript)是一个由getify解决方案支持的开源(mit许可证)项目。...使用labjs加载脚本可以减少页面加载过程中的资源阻塞,这是优化站点性能的一种简单有效的方法。
LABjs 是一个很小的 JavaScript 工具,用来根据需要加载 JavaScript 文件,通过使用该工具可以提升页面的性能,避免加载不需用到的 JavaScript 文件,可以实现动态并行加载脚本文件,以及管理加载脚本文件的执行顺序...
一、LABjs 的核心是 LAB(Loading and Blocking):Loading 指异步...模块加载器也可降级为文件加载器用,因此使用 RequireJS 和 SeaJS,也可以达成 LABjs 的性能优化目的。 三、RequireJS 和 SeaJS 都是很不错的模块加
见run_script.sh对于如何启动一个实例RScript过程,在这种情况下, sqlite_to_csv.R从labjs分布。 建立 您可以构建一个名为r.sif的本地奇点图像,但这需要root: sudo singularity build r.sif r.def 或者,在...
目前流行的几个加载器,像 curljs、LABjs 和 RequireJS 使用都很广泛。他们功能强大的,但有些情况下可以有更简单的方案。 如果你正在使用 jQuery,有一个内置的方法可以用来加载脚本。如果你想延迟加载插件或任何...
BrowserRequire 是给浏览器使用的模块化框架,并且提供灵活加载js文件(非模块化文件)的功能。 中文使用指南:点击进入! 目录介绍 dist————BrowserRequire框架压缩文件 example————示范案例 ...
国外的像基于jQuery的RequireJs,YUI Loader,LabJs,RunJs,国内也有淘宝的SeaJs,豆瓣的DoJs等,这些都是一些十分优秀的模块加载器。但是本文将会向大家介绍一个新的开源的轻量级“多线程”异步模块加载器In.js,...
网站我们新的GitHub存储库关键的未来简单易用的API,例如Labjs。 支持localStorage / Web SQL数据库/ IndexedDB。 通过nginx进行实时差异计算。 通过webpack构建差异计算。装载机参考< script src =" ./patchjs-...
可能很多人看到这个题目就会想到LABjs、RequireJS、SeaJS... 这些库,但无奈小编没用过这些库,什么 AMD 、CMD 哪来那么多术语... 前端的库太多了,要看各种乱七八糟的文档,好难啊,还不如自己写一个库呢。于是就有...
在看LABjs源代码时,发现里面有个将相对地址转为绝对地址的函数,将其拿出纪录如下: 代码如下: function canonical_uri(src, base_path) { var root_page = /^[^?#]*\//.exec(location.href)[0], root_...
lab.js它能够动态并行加载脚本文件 以及 管理加载脚本文件的执行顺序