【javascript】マウスイベント(mouseEvent)の種類と書き方
マウスイベントの種類
マウスイベントの中のメジャーなものを紹介したいと思います。
イベント | 発火のタイミング | |
---|---|---|
click | クリック | 要素をクリックした時 |
dblclick | ダブルクリック | ダブルクリックした時 |
mousedown | マウスダウン | クリックボタンを押した時 |
mouseup | マウスアップ | クリックボタンを離した時 |
mouseout | マウスアウト | ポインターが要素から離れた時 |
mouseover | マウスオーバー | ポインターが要素上にある時 |
mousemove | マウスムーブ | ポインターが要素上を移動している時 |
☟下の要素上でクリックしたり、ホバーしたりしてみてください
イベント | 結果 |
---|---|
click | 0回クリックされました‼ |
dblclick | 0回ダブルクリックされました‼ |
mousedown | |
mouseup | |
mouseout | |
mouseover | |
mousemove |
マウスイベントの書き方
HTMLに書く
要素のタグの中に、on + イベント(属性)="関数"
と書きます。
<div
onclick="clicked()"
ondblclick="dblClicked()"
onmousedown="mouseDown()"
onmouseup="mouseUp()"
onmouseover="mouseOver()"
onmouseout="mouseOut()"
onmousemove="mouseMove()"
></div>
javascript
それぞれのイベントの関数を書きます。
let clickedCount = 0;
let dblClickedCount = 0;
function clicked() {
clickedCount++;
console.log( `${clickedCount}回クリックされました‼`);
}
function dblClicked() {
dblClickedCount++;
console.log(`${dblClickedCount}回ダブルクリックされました‼`);
}
function mouseDown() {
console.log("クリックボタンを押した状態です‼");
}
function mouseUp() {
console.log("クリックボタンを離しました‼");
}
function mouseOut() {
console.log("ポインターが要素上から離れました‼");
}
function mouseOver() {
console.log("ポインターが要素上にあります‼");
}
function mouseMove() {
console.log("ポインターが要素上を移動中‼");
}
参考
addEventListenerを使う
addEventListenerを使うと、HTMLはクラス指定だけで、スッキリします。
<div class="box"></div>
javascript
関数はHTML上に書く場合と全く同じです。
要素.addEventListener("イベント", 関数)
box.addEventListener("click", clicked);
box.addEventListener("dblclick", dblClicked);
box.addEventListener("mousedown", mouseDown);
box.addEventListener("mouseup", mouseUp);
box.addEventListener("mouseout", mouseOut);
box.addEventListener("mouseover", mouseOver);
box.addEventListener("mousemove", mouseMove);
または、以下のようにいっしょに書くこともできます。
box.addEventListener("mousemove", function(){
console.log("ポインターが要素上を移動中‼");
});
まとめ
-
マウスイベント
click : 要素をクリックした時
dblclick : 要素をダブルクリックした時
mousedowm : クリックボタンを押した時
mouseup : クリックボタンを離した時
mouseout : ポインターが要素から離れた時
mouseover : ポインターが要素上にある時
mousemove : ポインターが要素上を移動している時
-
書き方
HTMLに属性を書く
要素のタグの中に、on + イベント(属性)="関数"
addEventListenerを使う
要素.addEventListener("マウスイベント""関数")