У меня есть опции моего веб-приложения на вкладках.
<ul id="tabs">
<li><a href="a.php">aaa</a></li>
<li><a href="b.php">bbb</a></li>
<li><a href="c.php">ccc</a></li>
<li><a href="d.php">ddd</a></li>
<li><a href="e.php">eee</a></li>
</ul>
Когда пользователь нажимает на любую вкладку (в том же окне), появляется эффект затухания, который я получаю с этим кодом, а затем автоматическое перенаправление:
$('ul#tabs li a').click(function(e){
if(e.which == 1) {
var link = $(this).attr('href');
$('#content').fadeOut('fast',function(){
window.location = link;
});
}
});
Отлично работает, потому что игнорирует средний щелчок мыши (при открытии опции на новой вкладке эффект не должен срабатывать). Проблема в том, что, если я открываю вкладку комбинацией клавиатура + мышь, вместо открытия новой вкладки, она запускает весь код эффекта / перенаправления.
Итак, как я могу обнаружить это с помощью jQuery:
- cmd + щелчок левой кнопкой мыши (mac)
- элемент управления + щелчок левой кнопкой мыши (Windows / Linux)