2010-12-01 22 views
1

ユーザーがマウスの左ボタンまたは右ボタン+ Ctrlキーを押したかどうかを検出しようとしていますが、これを行う方法がわかりません。マウスから左クリックを検出できますか?またはCtrl +右クリック?

私はクリックするだけを検出するか知っている、私は

$(document).click(function(e) { 
    if (e.button == 0) { 
     // was the left button 
     alert('clicked'); 
    } 
}); 

など何かができるjQueryの1で

<li onLeftClick=\"dosomething()\"> ? 
+0

右クリックを意味します。 – DampeS8N

+0

いいえ、私は左クリックしています。デフォルトでonClick ...は右クリックと同じです。だから、私はleftClickアクションを除外したいと思っています... – frames

+1

「コメントを追加」ボタンをクリックしたときに使用しましたか? – DampeS8N

答えて

4

を行うための機能があります

<li onClick=\"dosomething()\"> 

使用することができます通常のjavascriptでは、onClick関数でアクセス可能なイベント変数があるはずです

おそらくこれはまた、あなたがイベントのbuttonプロパティを確認することができます

http://www.javascripter.net/faq/leftvsri.htm

1

そのまだ正確な場合、まだ私にはわからないお手伝いします。

あなたが間違いなく気に入らないのは、異なるブラウザが異なる値を返すということです。FirefoxIEのドキュメントをチェックしてください。だからあなたはまた、何らかのブラウザの検出を行う必要があります。

0

あなたは物事の間違った面を見ている。 PHPはサーバサイドであり、サイトを訪れる人とは対照的にサーバ上で動作します。誰かがあなたのサイトを訪問すると、訪問者(client)はサーバーコンピュータにページのリクエストを送信します。サーバーはその要求を受信し、クライアントに情報を送信します。クライアントがマウスをクリックすると、(デフォルトでは)何もサーバーに送信されません。

解決策は、必要な作業によって異なります。何かをクリックしたときにPHPスクリプトを実行する必要がある場合は、AJAXを介して非同期要求を送信してください。あなたはAJAX呼び出しをdosomething()関数に入れることができます。 http://www.ibm.com/developerworks/web/library/wa-ajaxintro1.htmlは良い出発点です。あなたがjQueryをよく知っているなら、それは非常に簡単な関数呼び出しです。http://api.jquery.com/jQuery.ajax/

+0

彼の質問にphpやajaxへの参照がありません。彼の例はjavascriptで、質問はjavascriptでタグ付けされています。なぜあなたは彼が間違った側を見ていると思うか分かりません... –

+0

それはタグが付けられました):それは前にPHPを持っていました。 – munchybunch

関連する問題