我正在尝试编写一个网页,下载"myfile.docx"
,然后在下载完成后自行关闭。
这就是我得到的
<html>
<body>
<form method='get' action='myfile.docx' name='startDownload'>
</form>
<script>
document.startDownload.submit();
window.close();
</script>
</body>
</html>
问题是页面没有关闭。请缩短
答案 0 :(得分:1)
首先,the submit
method不会阻止,因此将立即调用window.close
方法。文件下载完成后,我不知道有任何接收通知的方法。其次,您只能在通过脚本打开的window.close
上调用window
,而不是通过用户干预(请参阅https://stackoverflow.com/a/19768082/657401)。
答案 1 :(得分:0)
这有效:
<html>
<body>
<a href='myfile.docx' id='myfile' name='fileToDownload'>Download</a>
<script>
document.getElementById('myfile').click();
console.log(new Date());
console.log('Dude!');
sleep(4000);//wait for the file to finish downloading
console.log(new Date());
window.close()
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds){
break;
}
}
}
</script>
</body>
</html>