JavaScript マウスイベントで処理を行うサンプル

JavaScriptのマウスイベントで処理を行うサンプルです。

確認環境
・Windows10
・Google Chrome

目次

mouseoverイベントとmouseoutイベント

mouseoverイベントとmouseoutイベントで処理を行うサンプルです。
「テスト1」にカーソルを置くとmouseoverイベントが発生します。イベントを利用して背景色を表示します。
カーソルを外すとmouseoutイベントが発生します。イベントを利用して色を消します。

テスト1

コード

上記サンプルのコードです。

<style>
#p1{border:1px solid black;width:300px;}
</style>

<p id="p1" onmouseover="mouseOver1()" onmouseout="mouseOut1()">テスト1</p>

<script>
function mouseOver1(){
	document.getElementById("p1").style.backgroundColor = "Aquamarine";
}
function mouseOut1(){
	document.getElementById("p1").style.backgroundColor = "transparent";
}
</script>

5行目のonmouseoverとonmouseoutはイベントハンドラです。イベントハンドラトはイベントを受けて処理に繋げます。
マウスが上にのるとonmouseoverの=の右にある関数(=8行目)が実行されます。
マウスが外れるとonmouseoutの=の右にある関数(=11行目)が実行されます。

 

画像を切り替えるサンプル

画像を切り替えるサンプルです。
画像にカーソルを置くとmouseoverイベントが発生し画像を切替えます。
カーソルを外すとmouseoutイベントが発生し元の画像を表示します。

コード

上記サンプルのコードです。

<img src="test/js-mouse-event1.png" 
onmouseover="this.src='test/js-mouse-event2.png'" 
onmouseout="this.src='test/js-mouse-event1.png'" />

imgタグの中にonmouseoverとonmouseoutを記述します。
画像ファイル名の前にthis.srcを追加し、画像ファイル名はシングルコーテーションで括ります。

 

mousemoveイベント

mousemoveイベントで処理を行うサンプルです。
四角の場所でカーソルを動かすとmousemoveイベントが発生します。イベントを利用してカーソルの座標を更新します。
四角からカーソルが出るとイベントは発生しないので座標は更新されません。

コード

上記サンプルのコードです。

<style>
#p2{border:1px solid black;width:200px;
height:100px;background-color:Linen;}
</style>

<p id="p2" onmousemove="mouseMove1(event)"><span id="span2"></span></p>

<script>
function mouseMove1(e){
	document.getElementById("span2").textContent 
		= e.clientX + ":" + e.clientY;
}
</script>

6行目のonmousemoveはイベントハンドラです。イベントハンドラトはイベントを受けて処理に繋げます。
マウスが移動するとonmousemoveの=の右にある関数(=9行目)が実行されます。
mouseMove1(event)のeventはeventオブジェクトです。引数に指定できます。

 

mousedownイベントとmouseupイベント

mousedownイベントとmouseupイベントで処理を行うサンプルです。
downという文字をクリックするとクリックのダウンの部分でmousedownイベントが発生します。イベントを利用してテスト3の箇所に背景色をつけます。
upという文字をクリックするとクリックのアップの部分でmouseupイベントが発生します。イベントを利用してテスト3の箇所の背景色を消します。

テスト3

down

up

コード

上記サンプルのコードです。

<style>
#p3{border:1px solid black;width:300px;}
</style>

<p id="p3" >テスト3</p>
<p onmousedown="mouseDown()";>down</p>
<p onmouseup="mouseUP()">up</p>

<script>
function mouseDown(){
	document.getElementById("p3").style.backgroundColor = "Aquamarine";
}
function mouseUP(){
	document.getElementById("p3").style.backgroundColor = "transparent";
}
</script>

6,7行目のonmousedownとonmouseupはイベントハンドラです。イベントハンドラトはイベントを受けて処理に繋げます。
6行目の文字をクリックするとonmousedownの=の右にある関数(=10行目)が実行されます。マウスダウンなのでそのままでは色が残ります。
7行目の文字をクリックするとonmouseupの=の右にある関数(=13行目)が実行されます。

関連の記事

JavaScript イベントとイベントハンドラのサンプル

△上に戻る