Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Расчет координат мыши относительно блока (https://javascript.ru/forum/dom-window/28980-raschet-koordinat-myshi-otnositelno-bloka.html)

l-liava-l 09.06.2012 18:12

Расчет координат мыши относительно блока
 
Всем доброго времени суток!
Собственно как считать координаты курсора относительно левого верхнего угла определенного дива, а то у меня получается только относительно окна браузера с помощью pageX/pageY
Заранее благодарен.

devote 09.06.2012 18:19

event.layerX || event.offsetX;

l-liava-l 09.06.2012 18:32

что то я не то делаю, мне при наведении на #img говорит undefined.
var widthM = parseInt($('#img').css('width'));
var heightM = parseInt($('#img').css('height'));
var leftM = parseInt($('#img').css('left'));
var topM = parseInt($('#img').css('top'));

$('#img').mousemove( function(e) {
    $('#cor').html(
            "x: " + e.layerX +
            " | y: " + e.layerY
        );
var x = parseInt(e.layerX);
var y = parseInt(e.layerY);
if(x > leftM && x < leftM + widthM && y > topM && y< topM + heightM)
{
x = x - leftM;
y = y - topM;
 
$('#cursor').css({'left':e.pageX,'top':e.pageY,'background-position': -x + 'px'+' '+ -y   +'px'});
 
}
 
});


http://javascript.ru/forum/css-html-...tml#post101681 нашел старую темку но что то туплю

devote 09.06.2012 18:41

layerX - использует FireFox
offsetX - использует IE, Opera
насчет хрома не скажу, но тоже что-то из этого. Хотя в стандартах этих параметров нет.

devote 09.06.2012 18:45

<div id="overel" style="position: absolute; top: 100px; left: 100px; width: 100px; height: 100px; background-color: #f00;"></div>
<script type="text/javascript">
    document.getElementById( 'overel' ).onmousemove = function( e ) {
        var e = e || window.event;
        ( e.target || e.srcElement ).innerHTML = "X: " + ( e.layerX || e.offsetX ) + ", Y: " +  ( e.layerY || e.offsetY );
    }
</script>

l-liava-l 09.06.2012 18:48

О даа!!)) благодарствуем...
Цитата:

насчет хрома не скажу, но тоже что-то из этого. Хотя в стандартах этих параметров нет.
offsetX - хром


Часовой пояс GMT +3, время: 12:35.