现在,如果不推荐使用yepnope,如何使用modernizr加载条件js文件?

Mic*_*Fin 7 modernizr polyfills yepnope ruby-on-rails-4

现在使用modernizr加载条件javascript文件有哪些好的做法,因为在最新版本的modernizr中不推荐使用yepnope和.load.

以前能够使用.load函数. http://modernizr.com/docs/#load

Modernizr.load({
  test: Modernizr.geolocation,
  yep : 'geo.js',
  nope: 'geo-polyfill.js'
});
Run Code Online (Sandbox Code Playgroud)

现在.load与yepnope一起被弃用. https://github.com/SlexAxton/yepnope.js/

在yepnope被弃用之前参考答案 使用Modernizr加载脚本...不工作

小智 0

您可以使用jQuery 的 getScript 方法。我认为你也可以使用.fail而不是else声明。我花了一上午的时间来解决这个问题,并一直在尝试回答这些问题,以节省人们一些时间!

像这样的东西吗?

if (Modernizr.geolocation) {
    jQuery.getScript("geo.js")
        //it worked! do something!
        .done(function(){
            console.log('geo.js loaded');
        });
} else {
    jQuery.getScript("geo-polyfill.js")
        //it worked! do something!
        .done(function(){
            console.log('geo-polyfill.js loaded');
        });
}
Run Code Online (Sandbox Code Playgroud)