我有一个需要加载的动态脚本列表,回调函数调用加载的外部脚本中定义的另一个异步函数。
一个脚本对象由 {scriptUrl, property} 组成
所有脚本都定义了一个 externalScriptFunction 函数,它以 script['property'] 作为参数。
for(var i = 0; i < scripts.length; i++) {
var script = scripts[i];
$.getScript(script['scriptUrl'], function() {
externalScriptFunction(script['property'], function someAsyncMethod() {
...
...
});
})
}
我遇到的问题是,在执行 $.getScript 回调之前,for 循环已前进到下一个元素,而 script['property'] 来自数组的不同元素。
我该如何解决这个问题?
- 有没有办法将查询参数传递给加载的脚本?
- 或者 $.getScript 在移动到下一个项目之前完成加载脚本的方法?
- 还有其他解决方案吗?
谢谢!