Показать сообщение отдельно
  #6 (permalink)  
Старый 27.06.2011, 12:02
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от zaytsewa
у меня не получается приравнять координаты элемента координатам курсора
логика элементарная:

элемент по событию mousemove следует за курсором:
element.style.left = event.pageX;
element.style.top = event.pageY;

однако курсор на элементе всегда расположен в правом верхнем углу.
для этого нужно:

событие в mousedown из координат курсора вычесть площадь элемента:

document.mousedown = function() {
      var cursor_left = event.pageX - element.offsetLeft;
      var cursor_top = event.pageY - element.offsetTop;
};

в итоге нам осталось только из текущих координат курсора вычесть предыдущие выражения:

document.mousemove = function() {
      element.style.left = event.pageX - cursor_left + 'px';
      element.style.top = event.pageX - cursor_top +  'px';
};
Ответить с цитированием