ホイールマウスの座標

[上に] [前に] [次に]
KickUP! [E-Mail] 2000/01/20(木) 02:17:14
マウスカーソルの座標を知りたいのですが、
ホイールを回しただけではonmousemoveイベントが発生しないため
位置がズレてしまいます
なんとかならないものでしょうか?
もちろんマウスを少しでも動かせば正しい位置になります

かえる 2000/01/20(木) 11:43:35
window の onscroll 時に座標を取得する関数を呼ぶことで可能だと思われます。下記の例では onmousemove, onscroll 時に 取得した座標をmousePos 変数に格納しています。

<head>
<script>
function pos()
{
 this.x = 0;
 this.y = 0;
}

var mousePos = new pos;

function proc1()
{
 mousePos.x = event.offsetX;
 mousePos.y = event.offsetY;
}
function proc2()
{
 mousePos.x = event.clientX + window.document.body.scrollLeft - window.document.body.clientLeft;
 mousePos.y = event.clientY + window.document.body.scrollTop - window.document.body.clientTop;
}
</script>

</head>
<body onmousemove="proc1()" onscroll="proc2()">

KickUP! 2000/01/22(土) 02:19:56
[[解決]]
かえるさん、ありがとうございます。
この問題はプロが作った企業のページでも未解決になっていたので
半分あきらめていました。詳しい人っているもんですね。

[上に] [前に] [次に]