0

これは重複した質問かもしれませんが、私にとって有効な解決策を見たことがありません

私の質問は、div 内でマウスの位置を取得するにはどうすればよいですか?

ドキュメントを原点としては望んでいませんが、内側の div (ピンクのコンテンツ div) が必要なので、カーソルをピンクの div の (0 | 0) 座標に移動すると、原点座標として (0 | 0) 座標も必要になります。

ここでjsfiddleをセットアップしました

$('.content').mousemove(function(e){
    $('#xCoord').val(e.pageX);
    $('#yCoord').val(e.pageY);
});

これは私にとってはうまくいきません...そして私もそれを試しました

var parentOffset = $(this).parent().offset();

しかし、8px のオフセットが返されるだけで、jQuery の mousemove オフセットは未定義です

誰でも私を助けることができますか?

4

2 に答える 2

3

e.pageXウィンドウを参照する現在のマウス位置を返します。

これを試して:

var mouseX = e.pageX - $(this).offset().left;
var mouseY = e.pageY - $(this).offset().top;

更新されたフィドル: http://jsfiddle.net/B7zZ8/2/

于 2014-02-21T14:47:58.550 に答える
0

あなたの位置は実際の位置です - div 位置:

$('.content').mousemove(function(e){
        var pos=$(this).position();
        $('#xCoord').val(e.pageX-pos.left);
        $('#yCoord').val(e.pageY-pos.top);
    });

http://jsfiddle.net/B7zZ8/3/

于 2014-02-21T14:49:49.500 に答える