jQuery/JavaScript - 允许CTRL +单击以在新选项卡中打开链接

nsi*_*lva 11 javascript jquery

在jQuery或JavaScript中是否有一种方法可以让用户使用CTRL +单击链接以在<a href="">example</a>元素中添加新选项卡中的链接?

以下是我所谈论的一个例子: -

jQuery('#some-link').bind('click', function() {
   window.location = 'http://someurl.com';
});
Run Code Online (Sandbox Code Playgroud)

如果您按住CTRL并单击"some-link"元素,它只是在使用上面的代码时打开当前页面中的页面,任何想法如何做到这一点?

Bru*_*lza 16

检查Ctrl是否按下了键,然后使用打开链接window.open.但是,链接可能无法在新选项卡中打开.请参阅此处的讨论.

jQuery('#some-link').bind('click', function(e) {
   e.preventDefault(); 
   if (e.ctrlKey){
     window.open('http://someurl.com','_blank')
   }
});
Run Code Online (Sandbox Code Playgroud)

JSFiddle

  • `if(e.metaKey)`可能是更好的方法,因为`e.ctrlKey`将适用于Windows环境而不是Mac,而`metaKey`将适用于两者 (2认同)