搜索

首页  >  问答  >  正文

javascript - 像sourceforge这种无刷新的文件下载是怎么做到的?

国外很多网站在下载时都有这种效果,点击下载后进入一个引导页,上面出现一个倒计时“还有xxx秒后开始下载”,倒计时结束后没有打开新页面,浏览器也没有转向其它页,而是直接开始下载,这是怎么做到的。

PHPzPHPz2774 天前713

全部回复(2)我来回复

  • 高洛峰

    高洛峰2017-04-10 12:47:12

    不太清楚 sourceforge 实际是怎么做的,但通过Javascript可以实现相同的效果:

    倒计时可以通过 setTimeInterval 之类的方法实现每一秒修改一次剩余秒数。

    而下载的实现方法也有很多,包括:

    • @greatghoul 提到的构造 meta 标签
    • 最简单的: window.location.assign(url);
    • 构造隐藏的 iframe 并设置其 src

    回复
    0
  • 天蓬老师

    天蓬老师2017-04-10 12:47:12

    加个 meta 标签就好了

    <meta http-equiv="refresh" content="5; url=http://downloads.sourceforge.net/project/supertuxkart/SuperTuxKart/0.8/supertuxkart-0.8-lin-amd64.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fsupertuxkart%2F%3Fsource%3Ddlp&amp;ts=1366622692&amp;use_mirror=ncu">
    

    回复
    0
  • 取消回复