如何开始下载并关闭浏览器

时间:2016-10-22 10:05:00

标签: javascript html

我正在尝试编写一个网页,下载"myfile.docx",然后在下载完成后自行关闭。 这就是我得到的

   <html>
    <body>
        <form method='get' action='myfile.docx' name='startDownload'>
        </form>
        <script>
        document.startDownload.submit();
        window.close();
        </script>
    </body>
    </html>

问题是页面没有关闭。请缩短

2 个答案:

答案 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>