Element: mouseover イベント
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。
mouseover イベントは、ポインティングデバイス (マウスやトラックパッドなど) のカーソルが要素またはその子要素のうちの一つの上を移動したときに、その要素 (Element) に発行されます。
構文
このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
addEventListener("mouseover", (event) => {});
onmouseover = (event) => {};
イベント型
MouseEvent です。 UIEvent および Event を継承しています。
イベントプロパティ
親である UIEvent および Event から継承したプロパティもあります。
MouseEvent.altKey読取専用-
このマウスイベントが発行されたときに alt キーが押されていた場合は
trueを返します。 -
このマウスイベントが発行されたときに押されていたボタンの番号です(もしあれば)。
-
このマウスイベントが発行されたときに押されていたボタンです(もしあれば)。
MouseEvent.clientX読取専用-
ビューポート座標におけるマウスポインターの X 座標です。
MouseEvent.clientY読取専用-
ビューポート座標におけるマウスポインターの 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.screenX読取専用-
スクリーン座標におけるマウスポインターの X 座標です。
MouseEvent.screenY読取専用-
スクリーン座標におけるマウスポインターの Y 座標です。
MouseEvent.shiftKey読取専用-
このマウスイベントが発行されたときに shift キーが押されていた場合は
trueを返します。 MouseEvent.mozInputSource読取専用-
イベントを発生させた機器の種類(
MOZ_SOURCE_*定数のいずれか)。 これにより、例えばマウスイベントが実際のマウスによって生成されたのか、タッチイベントによって生成されたのかを判断することができます(これはイベントに関連付けられた座標を解釈する精度に影響するかもしれません)。 MouseEvent.webkitForce読取専用-
クリックしたときに適用された圧力です。
MouseEvent.x読取専用-
MouseEvent.clientXの別名です。 MouseEvent.y読取専用-
MouseEvent.clientYの別名です。
例
以下の例は、mouseover と mouseenter の各イベントの違いを説明しています。
HTML
<ul id="test">
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
</ul>
JavaScript
let test = document.getElementById("test");
// このハンドラーは、カーソルが順序なしリストの上を移動した
// ときに1度だけ実行されます
test.addEventListener(
"mouseenter",
(event) => {
// highlight the mouseenter target
event.target.style.color = "purple";
// 少し待ってから色をリセット
setTimeout(() => {
event.target.style.color = "";
}, 500);
},
false,
);
// このハンドラーは異なるリスト項目の上を移動するごとに
// 実行されます
test.addEventListener(
"mouseover",
(event) => {
// mouseover の対象を強調
event.target.style.color = "orange";
// 少し待ってから色をリセット
setTimeout(() => {
event.target.style.color = "";
}, 500);
},
false,
);
結果
仕様書
| 仕様書 |
|---|
| Pointer Events> # mouseover> |
| HTML> # handler-onmouseover> |