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");
};
}