加载并执行外部脚本后运行JavaScript代码
我想动态加载并执行来自不同域的第三方JavaScript文件,然后在完成后执行我自己的一些代码。我可以使用jQuery的$.getScript: 但是,根据jQuery文档,无法保证在调用回调时脚本已经执行加载并执行外部脚本后运行JavaScript代码,javascript,jquery,browser,webpage,Javascript,Jquery,Browser,Webpage,我想动态加载并执行来自不同域的第三方JavaScript文件,然后在完成后执行我自己的一些代码。我可以使用jQuery的$.getScript: 但是,根据jQuery文档,无法保证在调用回调时脚本已经执行 我的选择是什么?我需要一次性使用的最基本解决方案。您可以尝试在回调中添加一个小的超时,以确保脚本文件已执行。比如说 $.getScript('https://login.persona.org/include.js', function () { setTimeout(functio
我的选择是什么?我需要一次性使用的最基本解决方案。您可以尝试在回调中添加一个小的超时,以确保脚本文件已执行。比如说
$.getScript('https://login.persona.org/include.js', function () {
setTimeout(function(){
// my code
}, 25);
});
更新
试一试
console.lognavigatorId:,navigator.id;
$window.queuelogin,数组
功能下一步{
返回$.getScripthttps://login.persona.org/include.js.thennext
}
,功能{
console.lognavigatorId:,navigator.id
}
.dequeuelogin;
您的jquery版本是什么?您是否尝试过$.getScript xx.js.donefunction脚本,textStatus{}.failfunction jqxhr,settings,exception{};以确保它完成加载。@CheongBC如何确保脚本已执行?正如我在问题中所说,.done回调不保证在脚本执行后运行。如果textStatus===“success”,这是否保证脚本已执行?但愿设备不会运行缓慢?不用了,谢谢。
$.getScript('https://login.persona.org/include.js', function () {
setTimeout(function(){
// my code
}, 25);
});