LABjs ist ein kleines JavaScript-Tool, das zum Laden von JavaScript-Dateien nach Bedarf verwendet wird. Mit diesem Tool können Sie die Leistung der Seite verbessern, das Laden unnötiger JavaScript-Dateien vermeiden und ein dynamisches paralleles Laden und Verwalten von Skriptdateien realisieren. Die Ausführungsreihenfolge beim Laden von Skriptdateien.
Einfaches Beispiel
$LAB .script("script1.js", "script2.js", "script3.js") .block(function(){ // wait for all to load, then do something script1Func(); script2Func(); script3Func(); });
Wir stellen einige Beispiele von LABJS vor:
Beispiel 1:
$LAB .script("script1.js") .script("script2.js") .script("script3.js") .wait(function(){ // 等待所有script加载完再执行这个代码块 script1Func(); script2Func(); script3Func(); });
Beispiel 2:
$LAB .script({ src: "script1.js", type: "text/javascript" }) .script("script2.js") .script("script3.js") .wait(function(){ // 等待所有script加载完再执行这个代码块 script1Func(); script2Func(); script3Func(); });
Beispiel 3:
$LAB .script("script1.js", "script2.js", "script3.js") .wait(function(){ // 等待所有script加载完再执行这个代码块 script1Func(); script2Func(); script3Func(); });
Beispiel 4:
$LAB .script( [ "script1.js", "script2.js" ], "script3.js") .wait(function(){ // 等待所有script加载完再执行这个代码块 script1Func(); script2Func(); script3Func(); });
Beispiel 5:
$LAB .script("script1.js").wait() // 空的wait()只是确保script1在其他代码之前被执行 .script("script2.js") // script2 和 script3 依赖于 script1 .script("script3.js").wait() // 但是script2 和 script3 并不互相依赖,可以并行下载 .script("script4.js") // script4 依赖于 script1, script2 及 script3 .wait(function(){script4Func();});
Beispiel 6:
$LAB .script("script1.js") // script1, script2, and script3 之间没有依赖关系, .script("script2.js") // 所以可以任意顺序执行 .script("script3.js") .wait(function(){ // 如果需要,这里当然可以执行javascript函数 alert("Scripts 1-3 are loaded!"); }) .script("script4.js") // 依赖于 script1, script2 及 script3 .wait(function(){script4Func();});
Beispiel 7:
$LAB .setOptions({AlwaysPreserveOrder:true}) // 设置每个脚本之间等待 .script("script1.js") // script1, script2, script3, script4 互相依赖 .script("script2.js") // 并且并行下载后循序执行 .script("script3.js") .script("script4.js") .wait(function(){script4Func();});
Beispiel 8:
$LAB .script(function(){ // `_is_IE`的值ie为true ,非ie为false if (_is_IE) { return "ie.js"; // 如果是ie则这个js会被加载 } else { return null; //如果不是ie这个代码就会被略过 } }) .script("script1.js") .wait();
LABjs-Lademethode
Dynamisches Laden von Skriptdateien in LABjs bezieht sich auf das Laden externer JS über verschiedene Methoden, wenn das JS-Skript der Seite ausgeführt wird (im Wesentlichen anders als Skripte, die statisch über das