Dropbox的登陆页面下载过程如何运作良好?

时间:2012-04-19 05:29:27

标签: javascript redirect download installation

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

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

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

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

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

作为一名仍在为桌面/浏览器开发下载应用程序的软件开发人员,我真的很感激任何帮助!

1 个答案:

答案 0 :(得分:0)

事实上魔法不在按钮中,它只是正常的link,但带有该链接的页面确实有一个小技巧可以开始下载:

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

这里,load事件侦听器被注册为更改window.location的函数。 这是javascript重定向(more details)的常用方法,但就响应内容application/octet-stream而言,当前页面没有任何反应,并显示标准保存窗口。