如何知道IE文件下载提示何时弹出?

pat*_*ide 1 javascript

现在我有一个问题如下:

我在我的页面上添加了一个div,禁止用户在用户单击DOWNLOAD按钮时单击按钮,链接或字段.因此,当IE文件下载提示弹出或用户点击"保存","另存为"或"取消"时,我需要删除此div.

我怎么能达到这个目的?

IE只考虑请.

Poi*_*nty 5

实际上有一种方法可以让您猜测浏览器正在处理文件下载.我问了同样的问题,TJ Crowder有个好主意:

什么是绕过IE文件下载安全规则的技术?

我现在实际上正在使用这个想法,它完美无缺.诀窍是让页面发回"nonce"参数,其中包含随机字符串.然后页面开始document.cookie每100毫秒左右轮询一次,检查该字符串是否在cookie中.

反过来,服务器将选择的cookie(对于它的调用并不重要)设置为"nonce"参数中表单发送的值.然后它会像往常一样发出文件下载.

当HTTP响应返回浏览器时,将设置cookie.轮询cookie值的Javascript将会看到,然后它将知道正在处理HTTP响应.现在,它当然不知道用户没有在文件下载上点击"取消".

如果服务器确定原始请求是错误的(例如,如果文件下载涉及表单并且用户提供了错误输入或错过了字段),那么它将不会设置cookie并且只能使用HTML响应错误(管他呢).