ブラウザのマウスクリック時の動作

2006年12月18日(月) 23時59分 by level
B ?

先日、2ch を見ていたら以下のような書き込みを見つけました。

タブを閉じるときにセンタークリックするだろ? Operaだと押してすぐ閉じる感じだがFFだと離したときに閉じる感じなんだよな。ちょっと気になる程度だが。

これは、確認してみればすぐ分りますが、「感じ」というより、まさにそういう動作をしています。つまり、Opera はクリックした瞬間(Mouse Down)に反応、Firefox はクリック後マウスのボタンを離したとき(Mouse Up)に反応しています。IE7 も Opera と同じでした。ちょっと気になったので、マウスクリック時の動作について調べてみました。

以下の表は、主な動作がマウスの Down と Up のどちらに反応するかを調べたものです。

 
ブラウザのマウスクリックに対する反応
動作 Fx2Opera9IE7Safari
タブの中クリック(タブのクローズ) Up Down Down -
タブの余白の中クリック(新規タブ) -Down --
タブのクローズボタン UpUp UpUp
ウィンドウのクローズボタン UpUp UpUp
リンクのクリック UpUp UpUp
リンクの中クリック UpDown UpUp
戻る・進むボタン UpUp UpUp
コンテンツエリアの右クリック
(コンテキストメニュー)
UpUp UpDown
新規タブボタン -Up Up-
ブックマークをクリック UpUp UpUp
ブックマークツールバーのフォルダをクリック DownUp -Down
メニューをクリック DownDown DownDown
同上後、Mouse Up 後に、メニュー項目をクリック UpUp UpUp
ロケーションバーの履歴ボタンをクリック DownDown Down-
同上後、Mouse Up 後にリストをクリック UpUp Up-
ゴミ箱(*1)のボタンをクリック UpUp --
ゴミ箱(*1)の一覧ボタンをクリック DownUp --

*1: Firefox は Undo Closed Tabs Button で代用。

これを見て分るのは、基本的に Firefox ではブラウザの状態の変化を伴うようなクリックはすべて Mouse Up に反応するようになっています。Opera と IE7 もそれに近いのですが、Opera は中クリックはすべて Mouse Down に反応し、IE はタブの中クリックだけなぜか Mouse Down に反応するようになっています。Opera と IE7 の動作は一貫性に欠けるように思えます(表中、太字になっている箇所がおかしいと思えるところ)。もしこれらの理由を知っている人がいれば教えてください。あと、Safari などの他のブラウザの情報も歓迎します。

ちなみに、Mouse Up に反応させることのメリットとしては、クリック後、間違いに気がついてクリックしたままフォーカスをはずせばその動作をキャンセルできることにあります。それが、取り返しの付かない動作であるならば(例えばウィンドウのクローズ)結構重要なことだと思います。

Mouse Down に反応させるケースとしては、次の動作のためのメニューなどを開く場合が対象となるようです。なお、メニューやロケーションバーのドロップダウンリストの場合は、Mouse Down 後そのまま Mouse Up してメニューを継続表示させメニュー項目をクリックという使い方のほかに、Mouse Down でそのままドラッグして項目を選択後 Mouse Up でアクションを起こすこともできます。

最終更新: 2006年12月27日(水) 23時15分

コメント (2)

1 12/21 16:26 Macを常用してはいない
(c1) [2006/12/21 16:26:43] by Macを常用してはいない

Mac OS Xでは、メニューが出るアクション(downに反応)でマウスボタンを1秒程度押しっぱなし、かつポインタをメニュー領域に動かさず、というときにマウスボタンを離すとメニューが消えますね。押したらすぐ離すか、メニュー領域で離すかしないといけない。
で、Safariでupとdownのどちらに反応するか調べました。
タブの中クリック(タブのクローズ) -
タブの余白の中クリック(新規タブ) -
タブのクローズボタン Up
ウィンドウのクローズボタン Up
リンクのクリック Up
リンクの中クリック Up
戻る・進むボタン Up(押しっぱなしで履歴)
コンテンツエリアの右クリック(コンテキストメニュー) Down
新規タブボタン -
ブックマークをクリック Up
ブックマークツールバーのフォルダをクリック Down
メニューをクリック Down
同上後、Mouse Up 後に、メニュー項目をクリック Up
ロケーションバーのドロップダウンリストをクリック -
同上後、Mouse Up 後にリストをクリック -
ゴミ箱(*1)のボタンをクリック -
ゴミ箱(*1)のリストボタンをクリック -

2 12/21 22:22 level
(c2) [2006/12/21 22:22:18] by level

情報ありがとうございます。表に反映させました。
ところで、safariにはロケーションバー(アドレスバー)の履歴機能は無いのでしょうか?

トラックバック

トラックバックは検索対象外です。

この記事にリンクしているページ < >

  1. データがありません。