Javascript 禁用超链接左键单击,但允许右键单击

Javascript 禁用超链接左键单击,但允许右键单击,javascript,hyperlink,click,Javascript,Hyperlink,Click,我想显示一个部分禁用的超链接,左键单击什么都不做,右键单击会弹出通常的“在新窗口中打开”等上下文菜单。似乎您只需要有一个onclick处理程序来调用click事件的event.preventDefault()和event.stopPropagation() document.getElementById('someid').onclick = function(e){return e.preventDefault() && e.stopPropagation();}; 右键单击

我想显示一个部分禁用的超链接,左键单击什么都不做,右键单击会弹出通常的“在新窗口中打开”等上下文菜单。

似乎您只需要有一个onclick处理程序来调用click事件的event.preventDefault()和event.stopPropagation()

document.getElementById('someid').onclick = function(e){return e.preventDefault() && e.stopPropagation();};

右键单击仍应按预期工作,因为它来自不同的dom事件(oncontextmenu)。

似乎您只需要有一个onclick处理程序来调用单击事件的event.preventDefault()和event.stopPropagation()

document.getElementById('someid').onclick = function(e){return e.preventDefault() && e.stopPropagation();};
右键单击仍应按预期工作,因为它来自不同的dom事件(oncontextmenu)。

使用jquery可以

$('#yourlink').click( function () {
   return false;
});
使用jquery,您可以

$('#yourlink').click( function () {
   return false;
});

您可以在HTML中使用
onclick
事件属性

<a id="someId" href="https://www.google.com/" onclick="return false;">some link..</a>

您可以在HTML中使用
onclick
事件属性

<a id="someId" href="https://www.google.com/" onclick="return false;">some link..</a>

通常,您希望努力实现关注点的分离,并保持编程、标记和样式的分离。它使所有代码更易于维护。通常,您希望努力实现关注点的分离,并将编程、标记和样式保持分离。我接受了这个答案——主要是因为它让我了解了preventDefault和stopPropagation函数,但也因为stopPropagation可能会阻止一些问题的发生。谢谢。我接受了这个答案——主要是因为它让我了解了preventDefault和stopPropagation函数,但也因为stopPropagation可能会防止后续出现一些问题。谢谢