3

だから私は少し混乱しています。私はHTML5ゲームプロジェクトに取り組んでおり、特定のメニューについて、ユーザーが左クリックを使用して関数を介して画像に値を追加できるようにしたいのですが、メニューが表示される代わりに右クリックで値を削除します。これを行う3つの方法について読みました:

if (event.button === 2)イベントリスナーを div に割り当てていましたが、マウスの右ボタンであると読んでも、何らかの理由で作業できません。しかし、div.oncontextmenu = doRightClick;うまく動作します。そして、event.whichまだ理解していないようです。グローバルな event.button のように見えますが、キーボードのキーが含まれていますか?

私の質問は、以上を使用する理由はありますevent.buttonか? どちらか一方に利点はありますか?またはブラウザの問題はありますか?私はそれがIE8とは異なる値を持っていることを読みましたが、その下ではちょっと不自由です。事前に感謝します。event.which.oncontextmenuevent.button

4

1 に答える 1

1

このcontextmenuイベントは、実際には右クリック用ではありません。これはコンテキスト メニュー用ですが、呼び出されます (コンテキスト メニューのキーボード キー、ワンボタン マウスによる特別なクリックなど)。これらのイベントをキャプチャしてcontextmenuキャンセルできるようにしたい場合がありますが、右クリックを具体的に処理するためにmousedownorを使用します。mouseup

于 2013-06-18T20:35:37.183 に答える