|
|
|
| Написал скрипт, реализующий перетаскивание элемента документа.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<link rel="stylesheet" type="text/css" href="style.css">
<title></title>
<script language="JavaScript" type="text/javascript">
function beginDrag(elToDrag, event)
{
// выясняем, где находится перетаскиваемый элемент
var x = parseInt(elToDrag.style.left);
var y = parseInt(elToDrag.style.top);
// вычисляем расстояние между этой точкой и точкой, где была нажата кнопка мыши
var dX = event.clientX - x;
var dY = event.clientY - y;
document.addEventListener('mousemove', moveHandler, true);
document.addEventListener('mouseup', upHandler, true);
event.stopPropagation();
event.preventDefault();
// Обработчик перехватывающий событие onmousemove.
// Здесь вычисляются новые координаты элемента
function moveHandler(event)
{
// перемещаем элемент к текущей позиции курсора
elToDrag.style.left = (event.clientX - dX) +'px';
elToDrag.style.top = (event.clientY - dY) +'px';
event.stopPropagation();
}
// обработчик перехватывающий событие onmouseup в конце перетаскивания
function upHandler(event)
{
// отменяем регистрацию обработчиков
document.removeEventListener('mouseup', upHandler, true);
document.removeEventListener('mousemove', moveHandler, true);
event.stopPropagation();
}
}
</script>
</head>
<body>
<div id="mov" style="position: absolute; left: 100px; top: 100px; width: 100px;
background-color: white; border: solid black;" onmousedown="beginDrag(this, event);">
<p>Можно перетащить этот элемент</p>
</div>
</body>
</html>
|
Опять же работает только в Опере, а осел выдает ошибку
Объект не поддерживает это свойство или метод
в строке
document.addEventListener('mousemove', moveHandler, true);
|
Что можно сделать? | |
|
|
|
|
|
|
|
для: Kit
(26.09.2006 в 19:04)
| | Может кто-нибудь подсказать? | |
|
|
|
|
|
|
|
для: Kit
(27.09.2006 в 18:12)
| | там attachEvent надо (для IE) | |
|
|
|
|
|
|
|
для: 12345
(27.09.2006 в 19:14)
| | Все получилось. Спасибо :-) | |
|
|
|
|
|
|
|
для: Kit
(02.10.2006 в 14:41)
| | Хотелось бы увидеть доработанный код. plz | |
|
|
|