это, возможно, дублирующий вопрос, но я не видел рабочего решения для меня
Мой вопрос: как я могу получить позицию мыши в div?
Я не хочу, чтобы документ был как исходный, но внутренний div (розовый контент div), поэтому, когда я перемещаю курсор в координату (0 | 0) розового div, я хочу также координаты (0 | 0) как координаты моего начала
Я установил jsfiddle здесь
$('.content').mousemove(function(e){
$('#xCoord').val(e.pageX);
$('#yCoord').val(e.pageY);
});
это обычно не работает для меня... и я также пробовал это с помощью
var parentOffset = $(this).parent().offset();
но я просто получаю смещение 8px, и смещение mousemove jQuery не определено
Может кто-нибудь мне помочь?
e.pageX
возвращает текущую позицию мыши, относящуюся к окну.
Попробуй это:
var mouseX = e.pageX - $(this).offset().left;
var mouseY = e.pageY - $(this).offset().top;
Обновленная скрипка: http://jsfiddle.net/B7zZ8/2/
Ваша позиция - это фактическое положение - позиция div:
$('.content').mousemove(function(e){
var pos=$(this).position();
$('#xCoord').val(e.pageX-pos.left);
$('#yCoord').val(e.pageY-pos.top);
});