Web Artisan Blog - ウェブ アルチザン ブログ

JavaScript:ブラウザ毎の右クリック処理

JavaScript・XHTML・CSS (43 items)

2006年04月10日

ブラウザ毎、といってもWindowsXP環境における”IE6”、”FireFox1.5.0.1”、”Opera8.54”という3つのブラウザ、これらの右クリックによる動作について。

マウスクリック時(通常の左クリック)に何か処理(処理1)をしたい場合、最近では下記のように記述する例が多いのではないでしょうか。
document.onclick = function(e){
・・・処理1・・・
}


上記記述は、3つのブラウザ全てについて有効になります。
では、右クリック時に何か処理(処理2)をしたい場合は・・、
上記”onclick”時の記述を、”oncontextmenu”時にと記述すれば可能です。
document.oncontextmenu = function(e){
・・・処理2・・・
}


但し”oncontextmenu”は、”IE”と”FireFox”について有効であり、Operaでは有効ではありません。(”oncontextmenu”はW3Cの仕様でない事から、ブラウザ毎に仕様が異なるようです)

それとFireFoxですが、右クリック時、”oncontextmenu”と共に”onclick”も有効になるようです。すなわち、上記でいえば「右クリック時には処理1と処理2の両方が処理される」事になりますので注意しましょう。

で、結局上記コードで「左クリック時には処理1を、右クリック時に処理2を行う」といった動作を行えるのは、IEのみのようです。

・・といった具合に、右クリック一つを取ってもブラウザ毎に動作が異なる、、、辛い所です。。。

前の記事 次の記事

Comments

コメントは、まだ書かれていません

Add Comments

Trackback

トラックバックはありません

Trackback URL

http://www.res-system.com/weblog/action.php?action=plugin&name=TrackBack&tb_id=575