Dmi*_*ich 5 javascript iframe download dom-events jquery-events
我遇到了一个问题:我想抓住"保存文件"对话框关闭或加载服务器上生成的csv文件(隐藏微调器以进行加载)的时刻.我知道Javascript中没有这样的事件.我绝对不想在后端为这样的小问题添加cookie,所以我想实现另一种解决方法.我看到的唯一方法是iframe,但据我所知,事件监听onload器至少在Chrome中的附件标题不起作用.我还试图对iframe状态实施一种计时器检查,但是在发送文件请求后它才能正常工作.文件在几秒钟内(10-20)在服务器上生成,因此该解决方案不符合我的目标.
我在前端使用Angular,所以任何解决方案兼容(vanilla JS,jQuery,Angular本身)对我来说都会有很大的帮助.希望得到任何.感谢你们!
据我所知,没有任何事件会在UI 对话框打开或关闭DOM时触发。Save file
您可以尝试利用focus事件来捕获Save file对话框何时关闭并在调用具有属性集的元素window后重新获得焦点,尽管该方法并不完全可靠。.click()<a>download
// append or display spinner element here
var csvUrl = document.createElement("a");
csvUrl.href = url;
csvUrl.download = "csv_filename";
csvUrl.click();
window.onfocus = function () {
document.body.removeChild(csvUrl);
// remove or hide spinner element here
window.onfocus = null;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |