【问题标题】:Close a popup browser window only if the user saves the downloaded file仅当用户保存下载的文件时才关闭弹出式浏览器窗口
【发布时间】:2010-12-25 20:21:53
【问题描述】:

我们有一个弹出窗口,用户在其中进行一些选择并单击按钮以生成 pdf 文件。我们显示进度显示(动画 gif),然后最终使用 content-disposition: inline 将 pdf 内容发送给用户。然后用户通常会打印 pdf 文件。

对于某些用户,没有用于 pdf 文件的内嵌浏览器查看器,并提示用户保存 pdf 文件。在这些情况下,进度显示保持打开状态,即使文件已交付。检测用户选择保存文件而不是内联显示的好方法是什么?

到目前为止,我提出的一个想法是在弹出窗口中设置一个计时器,以在其内容仍然存在时关闭窗口。理论上,如果窗口的内容被pdf查看器替换,计时器将被清除。还有其他选择吗?如果 pdf 生成可能需要很长时间,我怎么知道将计时器设置为多长时间?我可以先发送http头,然后再发送pdf内容以快速触发pdf查看器吗?

【问题讨论】:

    标签: popup content-disposition browser-plugin


    【解决方案1】:

    我们通过在请求服务器开始生成 PDF 之前设置一个计时器解决了这个问题。如果 PDF 由浏览器窗口中的查看器打开,则取消计时器。如果计时器未取消,则它关闭窗口。我们为计时器选择了很长的时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-06
      相关资源
      最近更新 更多