Добро пожаловать в переполнение стека!
Используйте атрибуты события layerX
и layerY
, чтобы получить нужные значения. Атрибуты offsetX
и offsetY
всегда относятся к элементу, который находится под курсором, даже если событие связано с родительским элементом. То же относится и к атрибуту target
.
Кроме того, я предпочитаю использовать currentTarget, поскольку он немного облегчает чтение и понимание вашего кода без отслеживания происхождения this
.
$('.div2').mousemove(function(e) {
var posX = (50 - (e.layerX) / $(e.currentTarget).width() * 100);
var posY = (-50 + (e.layerY) / $(e.currentTarget).height() * 100);
$('.results').html(posX+', '+posY);
});
Проверьте мой контрольный пример на jsFiddle