![](/img/trans.png)
[英]JavaScript wait for two functions to finish and proceed with function three
[英]Wait for JavaScript function to finish before proceed
这可能不是一个复杂的问题,但是我不确定我是否在正确的轨道上。
我的目标是首先运行JavaScript函数,并在执行完全完成时(这可能需要花费几秒钟,但并非总是如此),然后关闭窗口。
功能和关闭仅通过一个按钮即可触发:
<button id="myID">Click me</button>
JavaScript是:
<script type="text/javascript">
function someFunction() {
// do some stuff
}
document.getElementById('myID').addEventListener("click", function(){
someFunction();
window.close();
});
</script>
这可以正常工作,但是如果这不是一种可靠的方法,可以让任何人提供一些建议吗? 重要的是,在触发window.close()之前,必须完全完成该函数的执行。
您可以将window.close()
放在alert();
。 但是,如果您想添加更多异步内容,则需要这样的回调函数。
<script type="text/javascript">
var closeWindow = function() {
window.close();
};
function someFunction(callback) {
alert('hi');
callback();
}
document.getElementById('myID').addEventListener("click", function(){
someFunction(closeWindow);
});
</script>
您的选择是:
window.close();
在回调函数中 页面加载后,someFunction()执行一些DOM操作
多数民众赞成在同步(浏览器可能会推迟渲染,但这里谈论的是毫秒),因此可以保证在函数返回之前完成DOM操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.