我一直在使用LABjs,并且运行良好。

我现在尝试使用很棒的Modernizr,并注意它使用yepnopejs进行条件资源加载。

由于我确实需要条件加载,因此可以同时使用LABjs和yepnopejs吗?还是我必须专门挑选一个?如果有人有使用它们的经验,请多多关照。谢谢!

最佳答案

LABjs可以执行条件加载,就像yepnope可以那样(它的API并不像yepnope那样性感)。

$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

09-25 15:59