链接PDF以在PDF的新选项卡中打开

链接PDF以在PDF的新选项卡中打开,pdf,Pdf,我知道这不是一个具体的编程问题,但它让我大吃一惊 我需要照标题上说的做。我尝试过很多方法,但都不起作用(至少不跨浏览器)。IIRC,有一个相对较新的PDF AcroForm JS命令可能会起到作用: app.launchURL(myURL, true); 这是对一个新窗口的请求,而不是一个新标签,但是一些浏览器无论如何都会将其解释为一个新标签。这可能就是你在“跨浏览器”评论中提到的 另一种选择有点令人讨厌。有一种方法可以在网页和PDF之间进行通信 在PDF中,可以使用各种方法将文档“HostC

我知道这不是一个具体的编程问题,但它让我大吃一惊


我需要照标题上说的做。我尝试过很多方法,但都不起作用(至少不跨浏览器)。

IIRC,有一个相对较新的PDF AcroForm JS命令可能会起到作用:

app.launchURL(myURL, true);
这是对一个新窗口的请求,而不是一个新标签,但是一些浏览器无论如何都会将其解释为一个新标签。这可能就是你在“跨浏览器”评论中提到的

另一种选择有点令人讨厌。有一种方法可以在网页和PDF之间进行通信

在PDF中,可以使用各种方法将文档“HostContainer”属性设置为对象:

PDF格式:

this.hostContainer.postMessage([theURL]);
在HTML中:

var thePDF = document.getElementById("thePDFObjectTagId");
thePDF.messageHandler = {
  onMessage: function(paramArray) {
    openANewTabWithTheUrl(paramArray[0]);
  }
}
包装PDF的网页可能只不过是一个对象标记和一些脚本


还有一种以另一种方式发送消息的机制。所有这些都是在手册中定义的。查找“Embedded PDF”和“HostContainer”上的规范。

launchURL的问题是,如果您不使用默认浏览器,它将在其他浏览器中打开您的URL,而不是在其他窗口(默认窗口)中打开。真难看。然而,你其余的回答帮助我做到了这一点。谢谢