onClick =" window.location - 尝试更改为在新选项卡中打开链接

时间:2014-06-05 14:04:08

标签: javascript html tabs window.open window.location

只是尝试将此当前代码打开新标签中的链接。尝试在此网站上找到类似问题的修复但尚无法使其正常工作......

目前的工作代码是:

<div onClick="window.location='https://URL';" class="element _element element-4"></div>

从研究开始,我听说我应该将它更改为onClick = window.open,所以我现在改为:

<div onClick=window.open(https://URL, Name) class="element _element element-4"></div>

问题,当我将代码更改为window.open时(如上所述)点击链接现在根本不做任何事情,更不用说在新标签页中打开了。

与div有关吗?我需要改变CSS还是JS?任何帮助非常感谢! :)

4 个答案:

答案 0 :(得分:9)

我猜你用错误的公式调用了这个函数。请检查您的功能参数。

您可以查看更多详情here

e.g。有效:onClick="window.open('yourURL');"

答案 1 :(得分:3)

您需要传递urlname作为字符串:

window.open("https://amazon.com", "amz");

看看是否有帮助。

但是,用户可以更改某些浏览器的设置,以影响打开新窗口或点击链接的行为方式(请参阅reference for links中的target属性)。因此,根据用户的设置和浏览器选择,您可能无法始终获得所需的结果。

答案 2 :(得分:2)

<span 
   class="pseudolink" 
   onclick="location='https://jsfiddle.net/'">
Go TO URL
</span>

.pseudolink { 
   color:blue; 
   text-decoration:underline; 
   cursor:pointer; 
   }

https://jsfiddle.net/mafais/bys46d5w/

答案 3 :(得分:0)

正如 Pedro Estrada 在他们的评论中所说,解决这个问题的合理方法是使用真实链接:

<a href="https://example.com/" target="_blank"></a>

如果您需要 <div> 的块布局,请使用 display: block 设置链接样式。

真正的链接具有许多虚假 JS 黑客所缺乏的有用功能:

  • 它们可以根据用户的需要在新标签页或新窗口中打开
  • 您可以在打开链接之前查看链接的位置
  • 您可以复制链接(或浏览器右键菜单中的任何其他功能)
  • 屏幕阅读器将 <a> 视为链接。尝试用 JS 复制它会很脆弱且有问题。
  • 如果您的 JS 无法加载或您的用户没有启用 JS,链接仍然有效
  • 您的网站加载速度更快,运行速度更快,因为它不依赖 JavaScript 来模仿浏览器已经实现的功能