【问题标题】:Can't open PDF on new tab using target="_blank"无法使用 target="_blank" 在新选项卡上打开 PDF
【发布时间】:2017-01-28 03:54:22
【问题描述】:

如何在新选项卡上打开 PDF,单独使用 target="_blank" 不起作用它仍然在同一选项卡中打开 pdf。

【问题讨论】:

  • 给我们看一些代码
  • 不需要代码,这只是一个技术问题。
  • 一个好问题是is this an XY problem?那么,您希望用户打开 PDF 并查看它还是仅仅获取它 而无需离开页面?如果是后者,并且您选择通过打开一个新选项卡/窗口来执行此操作,您应该知道 HTML5 中还可以使用 a 标签的 download 属性。它告诉浏览器你链接的任何东西都应该被下载,而不是打开。因此,用户可以获得 PDF 并留在页面上。

标签: javascript html


【解决方案1】:

方法一:HTML

<a target="_blank" href="http://your_url_here.html">Link</a>

您可以简单地通过设置 target="_blank" 来做到这一点,例如检查 this

更多Details

方法 2:Javascript

<a onclick="openInNewTab('Your URL');">Something To Click On</a>

function openInNewTab(url) {
  var win = window.open(url, '_blank');
  win.focus();
}

【讨论】:

    【解决方案2】:

    如果没有您的代码,很难判断出了什么问题,但进行了快速测试,这对我有用..

    <a target="_BLANK" href="pdf/your_pdf.pdf">YOUR PDF</a>
    

    【讨论】:

      【解决方案3】:

      您必须知道:“_Blank”并非在每个浏览器上都用作“新标签”。

      要做到这一点,你必须像这样使用js:

      <a href="..." onclick="javascript:windows.open('link', [options]);">Lnk</a>
      

      (它适用于任何浏览器,“_blank”不会)

      编辑:当然,window.open 中的“链接”将是存储 PDF 文件的路径。

      EDIT2(感谢 vlaz):是的,如果启用了 JS,它将在任何浏览器上运行,如果他不是,则不会。

      【讨论】:

      • 好吧,从技术上讲,onclick 也不一定能工作,这取决于浏览器是否启用了 JS。并且_blank 无论如何都会起作用。
      • 不,_blank 不会在所有浏览器上工作,js 会,但正如你所说的“应该启用 JS”。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-18
      相关资源
      最近更新 更多