マウスのイベント・座標を取得する

page : ブラウザ画面内の絶対座標 (スクロールで増える)

screen : PCディスプレイ全体画面内の絶対座標 (スクロールで増えない)

client : ブラウザ画面内描画上の絶対座標 (スクロールで増えない)

offset : 要素内の絶対座標

window.pageXOffset : スクロール量

pageX:
pageY:
screenX:
screenY:
clientX:
clientY:
window.pageXOffset:
window.pageYOffset:
offsetX:
offsetY:
view source

JavaScript

document.body.addEventListener('mousemove', function(e){
  document.getElementById('pageX').textContent = e.pageX;
  document.getElementById('pageY').textContent = e.pageY;
  document.getElementById('screenX').textContent = e.screenX;
  document.getElementById('screenY').textContent = e.screenY;
  document.getElementById('clientX').textContent = e.clientX;
  document.getElementById('clientY').textContent = e.clientY;

  document.getElementById('cursor').style.left = e.clientX + 'px';
  document.getElementById('cursor').style.top  = e.clientY + 'px';

});

document.getElementById('box').addEventListener('mousemove', function(e){
  document.getElementById('offsetX').textContent = e.offsetX;
  document.getElementById('offsetY').textContent = e.offsetY;
});


window.addEventListener('scroll', function(e){
  document.getElementById('pageXOffset').textContent = window.pageXOffset;
  document.getElementById('pageYOffset').textContent = window.pageYOffset;
});


var cursor = document.getElementById('cursor');
document.body.addEventListener('mousedown', function(e){
  cursor.style.backgroundColor = '#f00';
});
document.body.addEventListener('mouseup', function(e){
  cursor.style.backgroundColor = '';
});
document.getElementById('box').addEventListener('mouseover', function(e){
  cursor.style.backgroundColor = '#00f';
});
document.getElementById('box').addEventListener('mouseleave', function(e){
  //cursor.style.backgroundColor = '';
});

CSS

#param{
  position:fixed;
  right:0;
  top:160px;
  z-index:90;
  background-color:rgba(255,255,255,.8);
}

#box{
  width:400px;
  height:400px;
  background-color:#eee;
  margin:20px auto;
}

dl{
  padding:20px;
}
dt{
  margin-top:10px;
}
dt,
dd{
  min-height:1.2em;
}


#cursor{
  position:fixed;
  left:0;
  top:0;
  z-index:99;
  width:20px;
  height:20px;
  margin:-10px;
  background-color:rgba(255,200,200,.8);
  border-radius:50%;
}

HTML

ページのソースを表示 : Ctrl+U , DevTools : F12

view-source:https://hi0a.com/demo/-js/js-mouse-event/

ABOUT

hi0a.com 「ひまアプリ」は無料で遊べるミニゲームや便利ツールを公開しています。

プログラミング言語の動作デモやWEBデザイン、ソースコード、フロントエンド等の開発者のための技術を公開しています。

必要な機能の関数をコピペ利用したり勉強に活用できます。

プログラムの動作サンプル結果は画面上部に出力表示されています。

環境:最新のブラウザ GoogleChrome / Windows / Android / iPhone 等の端末で動作確認しています。

画像素材や音素材は半分自作でフリー素材配布サイトも利用しています。LINK参照。

動く便利なものが好きなだけで技術自体に興味はないのでコードは汚いです。

途中放置や実験状態、仕様変更、API廃止等で動かないページもあります。