像这样使用 Yepnope 是否可以,通过为每个小部件设置一个加载实例,我最终会在给定页面上获得 Modernizr.load aka Yepnope 的多个实例?可能是 10-20 个,有些可能会加载相同的脚本。
我认为最好使用另一个更适合依赖项等的资源加载器,比如 RequireJS。
我的问题是奇怪的错误,在 IE8 中只发生过几次。几乎就像它与每个 Modernizr.load 实例的执行顺序和脚本/回调的加载有关。
<div id="myWidget-1">
Widget that uses js loaded by yepnope
</div>
<script>
Modernizr.load({
load: [
'script1.js',
'script2.js',
'script3.js'
],
complete: function () {
... do some stuff ...
}
});
</script>
<div id="myWidget-2">
The same widget installed a second time, but with other settings.
</div>
<script>
Modernizr.load({
load: [
'script1.js',
'script2.js',
'script3.js'
],
complete: function () {
... do some stuff ...
}
});
</script>