既然不推荐使用 yepnope,如何使用 modernizr 加载条件 js 文件?
How to load a conditional js file using modernizr now that yepnope is deprecated?
既然 yepnope 和 .load 在最新版本的 modernizr 中已弃用,那么使用 modernizr 加载条件 javascript 文件有哪些好的做法。
以前可以使用.load函数。
http://modernizr.com/docs/#load
Modernizr.load({
test: Modernizr.geolocation,
yep : 'geo.js',
nope: 'geo-polyfill.js'
});
现在 .load 与 yepnope 一起被弃用了。
https://github.com/SlexAxton/yepnope.js/
在弃用 yepnope 之前的答案参考
Loading Scripts Using Modernizr... Not Working
您可以使用 jQuery's getScript method。我认为您也可以使用 .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');
});
}
既然 yepnope 和 .load 在最新版本的 modernizr 中已弃用,那么使用 modernizr 加载条件 javascript 文件有哪些好的做法。
以前可以使用.load函数。 http://modernizr.com/docs/#load
Modernizr.load({
test: Modernizr.geolocation,
yep : 'geo.js',
nope: 'geo-polyfill.js'
});
现在 .load 与 yepnope 一起被弃用了。 https://github.com/SlexAxton/yepnope.js/
在弃用 yepnope 之前的答案参考 Loading Scripts Using Modernizr... Not Working
您可以使用 jQuery's getScript method。我认为您也可以使用 .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');
});
}