2

在 Dropbox 的主页 (http://www.dropbox.com) 上,当用户单击下载按钮时,它会启动 1) 用户浏览器的正确安装程序2) 将它们重定向到相应的安装说明页面,而不会被标记主要浏览器作为弹出窗口。

我尝试使用以下代码用 Javascript 实现他们的方法:

<a href="http://downloadlink.exe"     onClick="window.open('http://InstallInstructionsURL.com');">

但是各种浏览器会阻止它并将其标记为弹出窗口。而且它只捕获了问题的一部分(而不是将用户重定向到适当的浏览器和安装说明页面的部分)。

Dropbox 的主页效果很好。但我很难弄清楚他们做了什么,以及如何自己做。

作为仍在为桌面/浏览器开发下载应用程序的软件开发人员,我非常感谢任何帮助!

4

1 回答 1

0

其实神奇的不在按钮上,只是普通的链接,但是有那个链接的页面真的有一个开始下载的小技巧:

<div id="page-content">
  <script type="text/javascript">
    Event.observe(window, 'load', function() {
     if (!Prototype.Browser.IE) {
        window.location = '\x2fdownload\x3fplat\x3dwin';
     }
    });
</script> 

在这里,加载事件侦听器被注册为更改的函数window.location。这是 javascript 重定向的常用方法(更多详细信息),但就响应内容而言application/octet-stream,当前页面没有发生任何事情,并且显示标准保存窗口。

于 2012-04-24T15:31:51.073 回答