首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单击Safari中的下载链接将导致单击所有target=_blank链接下载,有解决办法吗?

单击Safari中的下载链接将导致单击所有target=_blank链接下载,有解决办法吗?
EN

Stack Overflow用户
提问于 2018-01-19 21:47:33
回答 2查看 8.4K关注 0票数 8

问题:点击一个下载内容的链接后的,所有其他有target="_blank“且没有下载的链接点击就可以下载,而不是打开新的选项卡。

浏览器: Safari 11.0.2

代码语言:javascript
复制
<!DOCTYPE html>
<html>

  <head>
    <link rel="stylesheet" href="style.css">
    <script src="script.js"></script>
  </head>

  <body>
    <h3>Instructions</h3>
    <ul>
      <li>Click <a href='sample.txt' target='_blank'>ME</a> (download NOT present) to see page load in new tab then come back to this page</li>
      <li>Click <a href='sample.txt' download='sample.txt'>ME</a> (download PRESENT) to see it downloaded</li>
      <li>Click <a href='sample.txt' target='_blank'>ME</a> (download NOT present).  Safari forces this link to download</li>
    </ul>
  </body>

</html>

代码示例: https://embed.plnkr.co/IscC6LTTmpEbAMLrxyYJ/

复制:

  1. 单击具有下载属性的链接
  2. 下载后,单击target="_blank“页面上的链接,查看它是被迫下载的,而不是打开一个新的选项卡。

更新:I更新了这个问题,希望能更好地解释正在发生的事情。我已经找到了一种解决办法,但是如果我更改到_self的链接而不是_blank,那么它们在下载之后就会正常工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-28 19:19:14

不是一个真正的答案,但在向苹果报告了问题并等待之后,我们现在有了Safari 11.1.1,它似乎已经解决了问题,所以标记解决了。

票数 1
EN

Stack Overflow用户

发布于 2018-03-04 04:20:59

关于上面提到的问题,您可以选择下载一个文件:

打开同一窗口中的文件:

代码语言:javascript
复制
<a href="sample.txt" target="_self">Click to Download</a>

新窗口中的打开文件:

代码语言:javascript
复制
<a href="sample.txt" target="_blank">Click to Download</a>

强制文件下载窗口:

但是,如果您希望通过提示下载弹出框(打开或保存)强制文件下载,则只需将“下载”添加到链接中,如下所示:

代码语言:javascript
复制
<a href="sample.txt" download>Click to Download</a>

因此,您所编辑的代码可能如下所示:

代码语言:javascript
复制
<!DOCTYPE html>
<html>

  <head>
    <link rel="stylesheet" href="style.css">
    <script src="script.js"></script>
  </head>

  <body>
    <h3>Instructions</h3>
    <ul>
      <li>Click <a href='sample.txt' target='_blank'>ME</a> (download NOT present) to see page load in new tab then come back to this page</li>
      <li>Click <a href='sample.txt' download='sample.txt'>ME</a> (download PRESENT) to see it downloaded</li>
      <li>Click <a href='sample.txt' download>ME</a> (download NOT present).  Safari forces this link to download</li>
    </ul>
  </body>

</html>

希望这对你有帮助!

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48350009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档