我想開始將LABjs合併到我的項目中,但我想知道是否有條件加載腳本。例如,類似的東西:LABjs有條件地加載腳本
$LAB
.script('framework.js').wait()
.script(function(){
if(es){
return 'es.js';
}else{
return '';
}
})
我還沒有嘗試過,但確定它不起作用。有沒有更好的方法來做到這一點?
感謝
我想開始將LABjs合併到我的項目中,但我想知道是否有條件加載腳本。例如,類似的東西:LABjs有條件地加載腳本
$LAB
.script('framework.js').wait()
.script(function(){
if(es){
return 'es.js';
}else{
return '';
}
})
我還沒有嘗試過,但確定它不起作用。有沒有更好的方法來做到這一點?
感謝
其實,LABjs(和一段時間)一直支持有條件的鏈接...在幾個方面。首先,您可以將一個函數傳遞給.script()調用,並且該函數可以在其中包含條件邏輯,該條件邏輯根據條件返回不同的URL字符串(或根本沒有)。其次,鏈現在完全可以恢復(從2.0開始,在幾天內發佈),所以你可以通過簡單地保存鏈的狀態來完成上述博客文章中提到的「模擬鏈」的簡化形式,並且然後拿起並添加到後來,這樣的:
var $L = $LAB.script(...).script(...);
if (...) { $L = $L.script(...).wait(...);
// ...
$L = $L.script(...).....
我用LABjs我的大多數項目,但是當我需要有條件的鏈接我用yepnode。它與LABjs非常相似,但我更喜歡yepnodes如何處理條件加載。
要添加一些更具體的例子,本地化腳本,瀏覽器特定的腳本(必須支持舊的ie6),如果用戶通過身份驗證則不需要的腳本。我確定還有更多。你對這些情況做了什麼? – 2010-08-05 18:43:09