Непрофессиональное введение в JAVASCRIPT



             

Отображение перемещяющихся объектов - часть 2


</body> </html>

Вы можете видеть, что мы определяем три слоя в части <body> этой HTML-страницы. После того, как страница полностью загружена, функция init()

вызвается через обработчик события onLoad в теге <body>:

function init() { // define the 'dragable' layers dragObj[0]= document.layers["layer0"]; dragObj[1]= document.layers["layer1"]; dragObj[2]= document.layers["layer2"]; }

Массиву dragObj присваиваются все слои, которые могут перемещаться пользователем. Каждый слой получает номер в массиве dragObj. Позже, это понадобится нам.

Вы можете видеть, что мы используем тот же самый код, который показан выше, чтобы фиксировать события мыши:

window.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP);

window.onmousedown= startDrag; window.onmouseup= endDrag; window.onmousemove= moveIt;

Я добавил следующую строку к функции startDrag():

currentObj= whichObj(e);

Функция whichObj() определяет, на какой объекте щелкнул пользователь. Она возвращает номер слоя. Если не был нажат никакой уровень, то будет возвращено значение null. Переменная currentObj

сохраняет это значение. Это означает, что currentObj

представляет номер слоя, который передвигается в настоящее время (или null, если никакой уровень не передвигается).

В функции whichObj() мы проверяем свойства left, top, width и height для каждого слоя. С помощью этих значений мы можем проверить на какой объект нажал пользователь.




Содержание  Назад  Вперед