onmousemoveイベント(マウスムーブイベント)とは、マウスのポインタ(カーソル)を移動させている時のイベント。
構文
HTML
<element onmousemove="イベントハンドラ">
例
ボタン要素
<button onmousemove="イベントハンドラ">ボタン</button>
DIV要素
<div onmousemove="イベントハンドラ">DIV項目</div>
JavaScript
object.onmousemove = function(){ イベントハンドラ };
サンプル1
HTMLドキュメント上でイベントハンドラを登録するサンプル。
X座標:
Y座標:
サンプル1の動作について
- 黄色いボックス要素の上でマウスのポインタ(カーソル)を移動すると、「X座標:」と「Y座標:」の右横に、マウスのポインタの位置の座標を表示する。
- 黄色いボックス要素の上からマウスのポインタを外すと、「X座標:」と「Y座標:」の右横の数値が消える。
サンプル1のソースコード
JavaScript
<script type="text/javascript">
function sample1getCoordinates( $event ) {
document.getElementById( "sample1outputX" ).innerHTML = "X座標:" + $event.clientX;
document.getElementById( "sample1outputY" ).innerHTML = "Y座標:" + $event.clientY;
}
function sample1clearCoordinates() {
document.getElementById( "sample1outputX" ).innerHTML = "X座標:";
document.getElementById( "sample1outputY" ).innerHTML = "Y座標:";
}
</script>
function sample1getCoordinates( $event ) {
document.getElementById( "sample1outputX" ).innerHTML = "X座標:" + $event.clientX;
document.getElementById( "sample1outputY" ).innerHTML = "Y座標:" + $event.clientY;
}
function sample1clearCoordinates() {
document.getElementById( "sample1outputX" ).innerHTML = "X座標:";
document.getElementById( "sample1outputY" ).innerHTML = "Y座標:";
}
</script>
HTML
<div id="sample1box" onmousemove="sample1getCoordinates(event);" onmouseout="sample1clearCoordinates();"></div>
<p id="sample1outputX">X座標:</p>
<p id="sample1outputY">Y座標:</p>
<p id="sample1outputX">X座標:</p>
<p id="sample1outputY">Y座標:</p>
CSS
<style>
#sample1box {
height: 200px;
width: 300px;
border: 1px solid gray;
border-radius: 10px;
background-color: yellow;
}
</style>
#sample1box {
height: 200px;
width: 300px;
border: 1px solid gray;
border-radius: 10px;
background-color: yellow;
}
</style>
サンプル2
JavaScript上で動的にイベントハンドラを登録するサンプル。
X座標:
Y座標:
サンプル2の動作について
- 黄色いボックス要素の上でマウスのポインタ(カーソル)を移動すると、「X座標:」と「Y座標:」の右横に、マウスのポインタの位置の座標を表示する。
- 黄色いボックス要素の上からマウスのポインタを外すと、「X座標:」と「Y座標:」の右横の数値が消える。
サンプル2のソースコード
JavaScript
<script type="text/javascript">
window.onload = function () {
document.getElementById( "sample2box" ).onmousemove = function( event ){
sample2getCoordinates( event.clientX, event.clientY );
};
document.getElementById( "sample2box" ).onmouseout = function(){
sample2clearCoordinates();
};
}
function sample2getCoordinates( $arg1, $arg2 ) {
document.getElementById( "sample2outputX" ).innerHTML = "X座標:" + $arg1;
document.getElementById( "sample2outputY" ).innerHTML = "Y座標:" + $arg2;
}
function sample2clearCoordinates() {
document.getElementById( "sample2outputX" ).innerHTML = "X座標:";
document.getElementById( "sample2outputY" ).innerHTML = "Y座標:";
}
</script>
window.onload = function () {
document.getElementById( "sample2box" ).onmousemove = function( event ){
sample2getCoordinates( event.clientX, event.clientY );
};
document.getElementById( "sample2box" ).onmouseout = function(){
sample2clearCoordinates();
};
}
function sample2getCoordinates( $arg1, $arg2 ) {
document.getElementById( "sample2outputX" ).innerHTML = "X座標:" + $arg1;
document.getElementById( "sample2outputY" ).innerHTML = "Y座標:" + $arg2;
}
function sample2clearCoordinates() {
document.getElementById( "sample2outputX" ).innerHTML = "X座標:";
document.getElementById( "sample2outputY" ).innerHTML = "Y座標:";
}
</script>
HTML
<div id="sample2box"></div>
<p id="sample2outputX">X座標:</p>
<p id="sample2outputY">Y座標:</p>
<p id="sample2outputX">X座標:</p>
<p id="sample2outputY">Y座標:</p>
CSS
<style>
#sample2box {
height: 200px;
width: 300px;
border: 1px solid gray;
border-radius: 10px;
background-color: yellow;
}
</style>
#sample2box {
height: 200px;
width: 300px;
border: 1px solid gray;
border-radius: 10px;
background-color: yellow;
}
</style>