2011-11-06 78 views
2

我一直在使用LABjs,它運作良好。LABJs和Modernizr和yepnopejs

我現在試圖使用真棒Modernizr,並注意它使用yepnopejs進行有條件的資源加載。

由於我確實需要條件加載,我可以同時使用LABjs和yepnopejs嗎?或者我必須專門挑選一個?如果有人有經驗一起使用這些,我會很感激你的反饋。謝謝!

+1

我非常強烈地懷疑你對這種組合沒有問題。 – Pointy

回答

3

LABjs可以做條件加載,就像yepnope一樣(它只是沒有像yepnope那樣性感的API)。

$LAB.script(typeof JSON == "undefined" ? "json2.js" : false).wait() 
.script("myotherscript.js"); 

- 或 -

$LAB.script(function(){ 
    if (typeof JSON == "undefined") return "json2.js"; 
}) 
.wait() 
.script("myotherscript.js"); 

所以,你應該能夠LABjs做你的加載,並與您的Modernizr的HTML5特性測試的東西。現在


,這是Modernizr的還帶有yepnope一種恥辱,而這導致了稍微的代碼被加載比你需要的,因爲你有兩個裝載機。在這種情況下,你可以選擇拋棄LABjs,只使用yepnope,或者你可以忽略這個小問題(現在*)。

我強烈建議留在LABjs中,因爲它的加載功能比yepnope更強大/面向未來(但不像廣泛)。我打算髮布「yeahno.js」,它將在下面放置LABjs,並在其上放置yepnope API,以獲得兩全其美的效果。然後,您可以將modernizr,yepnope(API)和LABjs全部加載到一箇中,而無需額外成本。敬請期待http://github.com/getify/yeahno.js