2009-06-15 26 views
5

リンクをクリックしたときにアクションを実行する、すべてのリンクにクリックイベントをアタッチするjqueryスクリプトがあります。これはうまくいっていますが、私はちょうど私を賞賛しているいくつかのベテッターのフィードバックを得ました。jquery.clickの「新しいタブで開く」をクリックする方法

ユーザーは、リンクを右クリックして新しいタブで開きました。彼女がこれをしたとき、jqueryはクリックをトラップしませんでした。悪いユーザー。これをcmd-clickで再現しました。

これらのジェスチャーをトラップする方法、またはこれに固有の制限はありますか?

+0

これは、ブラウザのプレ日付タブに依存しているDOMイベントを考えれば、これが可能であることは間違いありません。私はあなたが新しいウィンドウで開くことをどのように区別するのか分かりません。 – annakata

答えて

1

だから、クリックごとにキャプチャしたいですか?イベントは右か中のものか? mousedown eventちょうどそれをしてはならないのですか?もちろん

、彼女は右...ちょうど「コピーリンクの場所」に

+0

このようになってしまいました。これはすべてのクリックをキャプチャします。これはまさに私が望むものです。また、コードの残りの部分を単純化することもできました。ありがとうございました! –

2

はあなたが何とかjQueryの右クリックのプラグインを利用することができます参照してください:

http://abeautifulsite.net/notebook/68

用途:CMD-clickieビット用として

$(document).ready(function() { 

    // Capture right click 
    $("#selector").rightClick(function(e) { 
     // Do something 
    }); 

    // Capture right mouse down 
    $("#selector").rightMouseDown(function(e) { 
     // Do something 
    }); 

    // Capture right mouseup 
    $("#selector").rightMouseUp(function(e) { 
     // Do something 
    }); 

    // Disable context menu on an element 
    $("#selector").noContext(); 

}); 

、私は本当にわかりません。場合、それは便利ですが、ここではjQueryのホットキープラグインがあります:

http://www.webappers.com/2008/07/31/bind-a-hot-key-combination-with-jquery-hotkeys/

+0

これはcmd +クリックには対応していませんが、それはありますか? – Sampson

+0

私はその目的に役立つかもしれないリソースへのリンクを追加しましたが、本当に役立つかもしれません。 – karim79

+0

+1素晴らしいリンクです。ホットキーが問題を解決するはずだと考えてください – TheVillageIdiot

0

をリンクをクリックすることができ、私はjquery.rightclick.jsに放火犯のコードを見てきました。

altKeyの ctrlKey

はそうあなたが使用することができ、これらの2つの修飾子::

(evt.altKey || evt.ctrKey)であれば

のようにマウスダウンとのmouseupイベントと修飾子があります。 jquery.rightclick.js