在一个小型的JavaScript网络应用中,我正在使用
window.location = '[url]/download-file';
实际下载文件作为附件。在服务器端,我使用Content-Disposition作为'附件;文件名= xyz.xml' 这很好用,我能够在浏览器上触发下载,而无需实际重新加载当前页面(因为它是单页应用程序,我需要在下载完成后保持DOM的当前状态。)
但是,我想在下载文件时显示一个小的ajax loader svg。我对显示/隐藏加载器的逻辑没有任何问题。我正在努力解决如何在window.location启动时显示加载器,并在解析后隐藏它(当浏览器下载提示出现保存文件时)。
当浏览器http请求开始直到浏览器http请求停止时,是否有可以在JavaScript中监听以显示/隐藏加载程序的事件?
答案 0 :(得分:0)
由于这是不可能的,我将使用服务器端cookie来跟踪响应是否已发送,如以下堆栈溢出问题的答案中所述: Detect when browser receives file download