このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
MouseEvent
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
MouseEvent インターフェイスは、ポインティングデバイス (マウスなど) によるユーザーの操作によって発行されたイベントを表します。このインターフェイスを使用する一般的なイベントとしてclick,dblclick,mouseup,mousedown があります。
MouseEvent はUIEvent から派生しており、これはさらにEvent から派生しています。後方互換性のためにMouseEvent.initMouseEvent() メソッドは維持されていますが、MouseEvent オブジェクトを作成する際はMouseEvent() コンストラクターを使用するべきです。
MouseEvent からは、WheelEvent、DragEvent、PointerEvent などの特定用途向けイベントが派生しています。
In this article
コンストラクター
MouseEvent()MouseEventオブジェクトを生成します。
静的プロパティ
MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN非標準読取専用通常のクリックに必要な最小圧力。
MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN非標準読取専用強めのクリック (force click) に必要な最小圧力。
インスタンスプロパティ
このインターフェイスは、親インターフェイスであるUIEvent およびEvent のプロパティも継承しています。
MouseEvent.altKey読取専用マウスイベントが発行されたときにalt キーが押下されていれば
trueを返します。MouseEvent.button読取専用マウスイベントが発行されたときに押されたまたは離されたボタンの番号です。(関連するイベントのみ)
MouseEvent.buttons読取専用マウスイベントが発行されたときに押されていたボタンの番号 (もしあれば) です。
MouseEvent.clientX読取専用ローカル (DOM コンテンツ) 座標における、マウスポインターの X 座標です。
MouseEvent.clientY読取専用ローカル (DOM コンテンツ) 座標における、マウスポインターの Y 座標です。
MouseEvent.ctrlKey読取専用マウスイベントが発行されたときにcontrol キーが押下されていれば、
trueを返します。MouseEvent.layerX非標準読取専用現在のレイヤーを基準としたイベントの水平座標を返します。
MouseEvent.layerY非標準読取専用現在のレイヤーを基準としたイベントの垂直座標を返します。
MouseEvent.metaKey読取専用マウスイベントが発行されたときにmeta キーが押下されていれば、
trueを返します。MouseEvent.movementX読取専用直前の
mousemoveイベントの位置から相対的な、マウスポインターの X 座標です。MouseEvent.movementY読取専用直前の
mousemoveイベントの位置から相対的な、マウスポインターの Y 座標です。MouseEvent.offsetX読取専用対象ノードのパディング辺の位置に対して相対的なマウスポインターの X 座標です。
MouseEvent.offsetY読取専用対象ノードのパディング辺の位置に対して相対的なマウスポインターの Y 座標です。
MouseEvent.pageX読取専用文書全体に対して相対的な、マウスポインターの X 座標です。
MouseEvent.pageY読取専用文書全体に対して相対的な、マウスポインターの Y 座標です。
MouseEvent.relatedTarget読取専用イベントのセカンダリターゲットがあれば、それを表します。
MouseEvent.screenX読取専用グローバル (スクリーン) 座標における、マウスポインターの X 座標。
MouseEvent.screenY読取専用グローバル (スクリーン) 座標における、マウスポインターの Y 座標。
MouseEvent.shiftKey読取専用マウスイベントが発行されたときにshift キーが押下されていれば、
trueを返します。MouseEvent.mozInputSource非標準読取専用イベントを生成した機器の種類 (
MOZ_SOURCE_*定数のいずれか)。これにより、例えばマウスイベントが実際のマウスによって発行されたのか、あるいはタッチイベントによって発行されたのかを識別できます (これは、イベントに関連する座標を解釈する際の正確さに影響を与えるでしょう)。MouseEvent.webkitForce非標準読取専用クリック時に与えられた圧力。
MouseEvent.x読取専用MouseEvent.clientXの別名。MouseEvent.y読取専用MouseEvent.clientYの別名。
インスタンスメソッド
このインターフェイスは、親インターフェイスであるUIEvent およびEvent のメソッドも継承しています。
MouseEvent.getModifierState()指定した修飾キーの現在の状態を返します。詳しくは
KeyboardEvent.getModifierState() をご覧ください。MouseEvent.initMouseEvent()非推奨;作成した
MouseEventの値を初期化します。イベントがすでに発行されている場合は、何も行いません。
例
この例では、 DOM メソッドを使ってチェックボックスのクリック(プログラムによるクリックイベントの生成)をシミュレートしています。イベントの状態(キャンセルされたかどうか)は、メソッドEventTarget.dispatchEvent() の返値で判断されます。
HTML
<p> <label><input type="checkbox" /> チェック</label></p><p> <button> クリックすると MouseEvent をチェックボックスに送信します </button></p>JavaScript
function simulateClick() { // クリックイベントを送るために要素を取得 const cb = document.getElementById("checkbox"); // クリックイベントの MouseEvent を合成 let evt = new MouseEvent("click", { bubbles: true, cancelable: true, view: window, }); // イベントをチェックボックス要素に送信 cb.dispatchEvent(evt);}document.getElementById("button").addEventListener("click", simulateClick);結果
仕様書
| Specification |
|---|
| UI Events> # interface-mouseevent> |
| CSSOM View Module> # extensions-to-the-mouseevent-interface> |
| Pointer Lock 2.0> # extensions-to-the-mouseevent-interface> |
ブラウザーの互換性
関連情報
- 直近の親である
UIEvent PointerEvent: マルチタッチを含む拡張されたポインターイベント