是否可以在下载完成之前禁用按钮?

F4k*_*k3d 2 extjs spring-mvc extjs4

我正在尝试解决以下问题,但找不到合适的解决方案:

下载开始时禁用按钮(带有底层下载链接)(按钮已单击一次)并在下载完成后再次启用按钮?

我试图用谷歌搜索它,但甚至找不到有用的提示。这在一般情况下甚至可能吗?

hlh*_*406 5

您可能想要查看的 3 个可能选项。

  1. 此链接可能对您有用,可作为开始使用的地方:

    http://gruffcode.com/2010/10/28/detecting-the-file-download-dialog-in-the-browser/

    这个想法是使用 cookie 来定义文件的下载时间。理论上,您可以编写 JavaScript 来检测 cookie,然后重新启用按钮。可以在这里找到在 JavaScript 中检测 cookie 的一个很好的概述:在 JavaScript 中按名称读取 cookie 的最短函数是什么?

  2. 另一个解决方案可能是看看这个问题: 检测何时关闭“文件下载”弹出窗口

    虽然这不完全是您要查找的内容 - Crescent Fresh 的答案可能会进行调整,以便在下载期间禁用您的按钮。

  3. 或者一个快速但不优雅的解决方案是在 30 秒到 2 分钟之间禁用下载按钮,以防止用户在文件下载时立即再次单击该按钮 - 这是最少的工作,但它不考虑不同的下载速度等.

希望有帮助!