Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何禁用或隐藏超链接的“在新选项卡中打开”选项_Javascript - Fatal编程技术网

Javascript 如何禁用或隐藏超链接的“在新选项卡中打开”选项

Javascript 如何禁用或隐藏超链接的“在新选项卡中打开”选项,javascript,Javascript,在右键单击菜单中的超链接上,如何删除或隐藏“在新窗口中打开”选项卡和“在新窗口中打开”选项 比如说 <a href="#" onclick="asd">foo</a> 您可以使用以下代码执行此操作 <script language="javascript"> $("a").click(function(event) { if(event.button==2) { return false; } }); </script

在右键单击菜单中的超链接上,如何删除或隐藏“在新窗口中打开”选项卡和“在新窗口中打开”选项

比如说

<a href="#" onclick="asd">foo</a>

您可以使用以下代码执行此操作

<script language="javascript">
$("a").click(function(event)
{
  if(event.button==2)
   {
     return false;    
   }
});
</script>

$(“a”)。单击(函数(事件)
{
if(event.button==2)
{
返回false;
}
});

您可以使用javascript链接而不是普通的html链接。只需执行href=“javascript:void(0)”并处理单击事件即可重定向页面。这不会删除在其他选项卡中打开的选项,但会确保页面在尝试时不会实际打开


也可以使用另一个类似的标记来代替HTML标记,并给它一个游标:指针css属性和jquery onclick,使其像链接一样工作。这将从上下文菜单中完全删除“在另一个选项卡中打开”选项。

不确定为什么要这样做,但可以通过将
href
移动到
数据href
属性,然后删除
href
并添加单击处理程序来完成。onclick将读取
数据href
并重定向

var links=document.getElementsByTagName(“a”);

对于(var i=0;iYou无法删除它。喜欢告诉你的老板/客户。你已经尝试过什么了?那么我如何通过右键单击->在超链接的新选项卡中打开调用onclick方法这是最干净的选项。我同意CodeI先生的说法。我只是用谷歌搜索了一下。我想这样做的原因是我设置了触发n模式中的ajax操作,如果用户在新选项卡中打开它们,则会将其打断(因为它位于新窗口中,而不是模式中,并且没有所需的所有上下文)。关闭href是最好的解决方案,我认为:我需要添加一些额外的样式,使它们看起来像链接。这里的event.button==2是什么意思?请解释一下,我也在试图阻止链接打开到新选项卡/窗口button 2代表鼠标的第二次单击。谢谢你的想法,但如果(event.which==2)event.which==1左键单击event.which==2中键单击event.which==3右键单击..我认为event.button==2表示jquery的右键单击
var links = document.getElementsByTagName("a");

for(var i=0; i<links.length; i++){
    links[i].setAttribute("data-href", links[i].getAttribute("href"));
    links[i].removeAttribute("href");
    links[i].onclick = function(){
        window.location = this.getAttribute("data-href");
    };
}