2015-11-03 74 views
3

当我使用Ctrl + Left click链接时,是否有办法阻止Microsoft Edge浏览器的默认行为?边缘浏览器:防止Ctrl +左键点击

边缘正在打开新标签中的链接,但我想有我自己的活动Ctrl + Left click

+0

这是在浏览器级别跨浏览器的常见惯例。你为什么要改变这个惯例在[你的网站]上的作用方式,因此可能会让用户感到困惑? – Sampson

回答

3

您可以为链接指定一个click事件处理程序。
然后,在处理程序中,您可以执行e.preventDefault()以防止默认的浏览器操作。 e.ctrlKey会告诉你,如果Ctrl按钮被点击。

$("a").click(function(e) { 
    if (e.ctrlKey === true) 
    { 
    e.preventDefault(); 
    // your custom actions 
    } 
}); 

这里是工作JSFiddle demo

既然你已经定义了jquery标签,我已经使用过了。当然,它可以很容易地在香草JS中完成。

+0

这不适用于OSX,其中按住ctrl并单击[打开上下文菜单](http://stackoverflow.com/questions/14725824/any-way-to-detect-ctrl-click-in-javascript-for- osx-browsers-no-jquery) – joews

+0

@joews OP希望它能够在Microsoft Edge浏览器中工作,该浏览器不适用于OS X. –

+0

SO不仅仅适用于OP - 该评论对其他来在这个问题上。 – joews