【问题标题】:JavaScript to open in a new tab with location.hrefJavaScript 在带有 location.href 的新选项卡中打开
【发布时间】:2022-01-12 22:45:23
【问题描述】:

我正在构建一个自定义链接树,但我正在努力寻找在新选项卡中打开这些链接的正确命令。目前链接在当前窗口和新标签页中打开。

let url = document.createElement('url');
    switch(event.target.innerText) {
      case 'youtube' : url = 'https://www.youtube.com/';break;
      case 'spotify' : url = 'https://open.spotify.com/artist/';break;
      case 'applemusic' : url = 'https://music.apple.com/';break;
      case 'soundcloud' : url = 'https://soundcloud.com/';break;
      case 'amazon' : url = 'https://media.giphy.com/';break;
      default: break;
    }
    if(url) {window.open(top.location.href = url, '_blank');}

当我将最后一行的 top 替换为 window 时,如下所示:

if(url) {window.open(top.location.href = url, '_blank');}

它会在我当前窗口内的一个奇怪的框中打开网址。

顺便说一下,这是我的第一篇文章,所以请告诉我,以防我做错了什么。

【问题讨论】:

  • top.location.href = url 你导致这里的页面 URL 发生变化,这是正确的吗?

标签: javascript window.open window.location


【解决方案1】:

您的代码正在更改当前页面的 URL(如果您的页面位于 <frame><iframe> 内,则为最上面的祖先)以指向指定的 URL,然后还为指定的网址。

只需使用:

if (url) { window.open(url, '_blank'); }

【讨论】:

  • 感谢您的回答,成功了!
猜你喜欢
  • 2017-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多