在Firefox中禁用鼠标中键单击

时间:2013-08-31 06:26:56

标签: javascript jquery html

在单击鼠标的中间按钮的同时在新窗口中打开锚标签。我想禁用这个新窗口/选项卡。 belwo提供的代码正在使用chrome。

$("a").on('click', function(e) { 
   if( e.which == 2 ) {
      e.preventDefault();
   }
}); 

检查以下链接:

  1. Triggering onclick event using middle click
  2. Disable middle mouse button for modal dialog
  3. 根据一些更好的方法是将锚标记更改为其他一些标签,但我需要左键单击锚标签的默认行为,我需要禁用中间和右键单击。有人帮我解决这个问题。

    注意:许多问题都是相同的,但尚未询问这个问题。

    这在Firefox中不起作用。我也需要在Firefox中解决这个问题。

    fiddle

2 个答案:

答案 0 :(得分:0)

这是为了在 Firefox 上阻止中间点击整个文档。您可以通过 e.target 检查任何元素。它需要 jQuery,但你也可以使用 vanilla js

$(document).on('auxclick', function(e) {
    if( e.button == 1 ) 
    alert('Its blocked globally');
    e.preventDefault();
    return false;
  }
})

答案 1 :(得分:-2)

纯HTML解决方案,没有javascript:

<a href="javascript:void(0)" onclick="window.location = 'http://www.stackoverflow.com';">Click me</a>