Расчет координат мыши относительно блока
Всем доброго времени суток!
Собственно как считать координаты курсора относительно левого верхнего угла определенного дива, а то у меня получается только относительно окна браузера с помощью pageX/pageY Заранее благодарен. |
event.layerX || event.offsetX; |
что то я не то делаю, мне при наведении на #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 нашел старую темку но что то туплю |
layerX - использует FireFox
offsetX - использует IE, Opera насчет хрома не скажу, но тоже что-то из этого. Хотя в стандартах этих параметров нет. |
<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> |
О даа!!)) благодарствуем...
Цитата:
|
Часовой пояс GMT +3, время: 12:35. |