$.getScript()
是一个异步调用,因此javascript代码将继续执行,直到调用完成。你已经知道了,
$.getScript()
还接受回调函数作为
success
参数,该参数将在异步调用完成时执行。您必须围绕该参数来解决问题,可能的方法是从数组中删除脚本,然后检查该数组是否为空。
$.each(Wordpress.required,function(i,val){
//Load the JS
$.getScript(Wordpress.theme_root + '/js/plugins/' + val + '/' + val + '.js',function(){ // %/js/plugins/%/%.js
Utilities.Log('library Loaded: ' + val);
// Remove the completed item
delete WordPress.required[i];
// If array is empty, all scripts loaded - execute callback!
if (!Wordpress.required.length)
callback();
});
});