我的应用程序以前大量使用Modernizr来加载脚本和填充程序,我在加载Angular JS时遇到了一段时间的问题。在JQuery之后使用Modernizr加载会产生错误;没有模块:(模块名称);
但是当我移动JQuery&在脚本加载之前的Angular,使用JQuery(在角度控制器脚本内部)的行将失败,尽管它已经在角度脚本之前加载。我正在使用下面的脚本来在加载modernizr之后推迟内联脚本,它将在modenizr完成加载所有脚本后执行。当我评论关闭脚本加载行时,一切都很好,但当前页面上的内联脚本将失败。
docready=[],$=function(){return{ready:function(fn){docready.push(fn)}}},
答案 0 :(得分:1)
我通过创建一个简单的延迟函数将其推送到数组来解决这个问题。
var _a = {ready: function(fn){ _as.push(fn);}}
将普通的$(document).ready替换为以下语法。
_a.ready(function(){
然后在modernizr完成加载所有需要JS之后调用此函数。
for(n in _as) _as[n]();
多数人。