我有一个网站,有时他的ajax请求会返回一些内联脚本(javascript),这些脚本依赖于页面初始请求中加载的方法。例如,考虑向用户弹出消息的方法,以及使用此方法的ajax请求。
我的初始页面请求异步加载这些脚本,因此ajax请求有可能在主脚本加载完成之前返回响应,并且方法'notify'尚未加载,有没有办法等待或检查是否这个完成加载?我以为使用$(window).load(),但我想这只会触发一次。
答案 0 :(得分:0)
(function() {
function myModuleRun() {
//do what module does
}
if (typeof window.myMainScriptLoaded === 'function') {
window.myModuleLoaded(myModuleRun);
} else {
window.loadedQueue = window.loadedQueue || [];
window.loadedQueue.push(myModuleRun)
}
})();
在主脚本中:
window.myModuleLoaded(module) {
// do what you want to do when module loaded;
}
// use "for" loop, if you need to support older browsers.
window.loadedQueue.forEach(window.myModuleLoaded);