html javascript窗口.新选项卡中的位置

8fsztsew  于 2022-11-27  发布在  Java
关注(0)|答案(8)|浏览(147)

我正在通过window.location将用户转到某个url,但是这个url在浏览器的同一个标签页中打开。我希望它在新标签页中打开。我可以用window.location来完成这个操作吗?有没有其他方法来完成这个操作?

t5zmwmid

t5zmwmid1#

window.open('https://support.wwf.org.uk', '_blank');

第二个参数是使其在新窗口中打开的参数。

qq24tv8q

qq24tv8q2#

您甚至可以使用

window.open('https://support.wwf.org.uk', "_blank") || window.location.replace('https://support.wwf.org.uk');

如果弹出窗口被阻止,此操作将在同一选项卡上打开它。

d6kp6zgx

d6kp6zgx3#

我不认为有一种方法可以做到这一点,除非你正在编写一个浏览器扩展。你可以尝试使用window.open,并希望用户将他们的浏览器设置为在新标签中打开新窗口。

bnlyeluc

bnlyeluc4#

这对我在Chrome 53上很有效。还没有在其他地方测试过:

function navigate(href, newTab) {
   var a = document.createElement('a');
   a.href = href;
   if (newTab) {
      a.setAttribute('target', '_blank');
   }
   a.click();
}
pjngdqdw

pjngdqdw5#

有了jQuery,它就更容易了,也可以在Chrome上工作

$('#your-button').on('click', function(){
       $('<a href="https://www.some-page.com" target="blank"></a>')[0].click();    
})
r7s23pms

r7s23pms6#

而不是去弹出窗口,我个人喜欢这个解决方案,提到了这个问题线程JavaScript: location.href to open in new window/tab?

$(document).on('click','span.external-link',function(){
        var t               = $(this), 
            URL             = t.attr('data-href');        
        $('<a href="'+ URL +'" target="_blank">External Link</a>')[0].click();

    });

工作example

xqnpmsa8

xqnpmsa87#

我们必须动态设置属性target="_blank”,它将在新选项卡中打开它。document.getElementsByTagName("a")[0].setAttribute('target', '_blank')
document.getElementsByTagName("a")[0].click()
如果要在新窗口中打开,请获取href链接并使用window.open
var link = document.getElementsByTagName("a")[0].getAttribute("href");
window.open(url, "","height=500,width=500");
在上面的例子中,不要将第二个参数提供为_blank。

lmyy7pcs

lmyy7pcs8#

<p>let url = 'yourUrl?Param=' + Param;</p>
<p>window.open(url, '_blank');</p>

相关问题