簡體   English   中英

即使用戶單擊“中間按鈕”或右鍵單擊->在新選項卡中打開,如何觸發jquery“單擊”事件

[英]How to trigger jquery “click” event even when the user clicked “middle button” or right click -> open in a new tab

我有一個javascript,當用戶單擊通知時,它會將通知標記為已讀。

javascript在<a>標記中觸發,該標記在腳本返回true之后,將用戶重定向到具有target="_blank"另一個頁面;

但是,如果用戶使用鼠標中鍵或在新選項卡中單擊鼠標右鍵->打開,它將不會觸發事件。

我知道我可以創建一個“鏈接”,並且不允許在新選項卡中打開選項,但是我寧可。

使用mousedown事件包括按下了哪個按鈕

$("someTagOrID").on('mousedown', function(e) { 
   if( (e.which === 1) ) {
     alert("left button");
   }if( (e.which === 3) ) {
     alert("right button");
   }else if( (e.which === 2) ) {
      alert("middle button"); 
   }
});

我的回答和您的問題的來源是重復的: 如何使用jQuery區分鼠標左鍵和鼠標右鍵

盡管該問題的答案將對您有所幫助:

從jQuery 1.1.3版本開始,event。將規范event.keyCode和event.charCode,因此您不必擔心瀏覽器兼容性問題。 關於event.which的文檔

event.which它將分別為左,中和右鼠標按鈕提供1、2或3,因此:

$('#element').mousedown(function(event) {
    switch (event.which) {
        case 1:
            alert('Left Mouse button pressed.');
            break;
        case 2:
            alert('Middle Mouse button pressed.');
            break;
        case 3:
            alert('Right Mouse button pressed.');
            break;
        default:
            alert('You have a strange Mouse!');
    }
});

最初發布自“ tinybyte”

您可以簡單地使用mouse up移事件。 像這樣:

   <a href="http://www.google.com" onmouseup="alert('a')">link</a>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM