Чтение онлайн

на главную - закладки

Жанры

JavaScript. Подробное руководство, 6-е издание
Шрифт:

// Это событие обработано и не должно передаваться другим обработчикам

if (event.stopPropagation)

event.stopPropagation; // Стандартная модель

else

event.cancelBubble = true; // IE

// Предотвратить выполнение действий, предусмотренных по умолчанию,

if (event.preventDefault)

event.preventDefault; // Стандартная модель

else

event.returnValue = false; // IE

/**

* Этот обработчик перехватывает события mousemove, возникающие

* в процессе буксировки элемента. Он отвечает за перемещение элемента.

**/

function moveHandler(e) {

if (!е) е = window.event; // Модель событий IE

// Переместить элемент в позицию указателя мыши с учетом позиций

// полос прокрутки и смещений относительно начального щелчка,

var scroll = getScrollOffsets;

elementToDrag.style.left = (e.clientX + scroll.x - deltaX) + "px";

elementToDrag.style.top = (e.clientY + scroll.у - deltaY) + "px";

// И прервать дальнейшее распространение события.

if (е.stopPropagation)

е.stopPropagation; // Стандартная модель

else

е.cancelBubble = true; // IE

}

/**

* Этот обработчик перехватывает заключительное событие mouseup,

* которое завершает операцию буксировки.

**/

function upHandler(e) {

if (!е) е = window.event; // Модель событий IE

// Удалить перехватывающие обработчики событий,

if (document.removeEventListener) { // Модель событий DOM

document.removeEventListenerC'mouseup", upHandler, true);

document.removeEventListener("mousemove", moveHandler, true);

}

else

if (document.detachEvent) { // Модель событий IE 5+

elementToDrag.detachEvent("onlosecapture", upHandler);

elementToDrag.detachEvent("onmouseup", upHandler);

elementToDrag.detachEvent("onmousemove", moveHandler);

elementToDrag.releaseCapture;

}

// И прервать дальнейшее распространение события.

if (е.stopPropagation)

е.stopPropagation; // Стандартная модель

else

е.cancelBubble = true; // IE

}

}

Следующий фрагмент демонстрирует порядок использования функции drag в HTML-файле (это упрощенная версия примера 16.2 с добавленной поддержкой буксировки):

<script src="getScrollOffsets. js"x/script> <!-- требуется функция drag-->

<script src= "Drag. js"x/script> <!-- определение drag -->

<!-- Буксируемый элемент -->

<div style="positionabsolute; left:100px; top:100px; width:250px;

background-color: white; border: solid black;">

<!-- "Заголовок" окна. Обратите внимание на атрибут onmousedown.
– ->

<div style= "background-color: gray: border-bottom: dotted black;

padding: 3px; font-family: sans-serif; font-weight: bold;"

onmousedown="drag(this.parentNode, event);">

Перетащи меня <!-- Содержимое заголовка -->

Поделиться:
Популярные книги

Я все еще не царь. Книга XXVI

Дрейк Сириус
26. Дорогой барон!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я все еще не царь. Книга XXVI

Одержимая (авторский сборник)

Дяченко Марина и Сергей
Фантастика:
фэнтези
научная фантастика
7.80
рейтинг книги
Одержимая (авторский сборник)

Корпорация М.И.Ф. (сборник)

Асприн Роберт Линн
Фантастика:
юмористическая фантастика
8.79
рейтинг книги
Корпорация М.И.Ф. (сборник)

Геном хищника. Книга седьмая

Гарцевич Евгений Александрович
7. Я - Легенда!
Фантастика:
боевая фантастика
рпг
фэнтези
попаданцы
5.00
рейтинг книги
Геном хищника. Книга седьмая

Кодекс Крови. Книга V

Борзых М.
5. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга V

Завещание

Гришэм Джон
Детективы:
триллеры
7.00
рейтинг книги
Завещание

Обрыв

Гончаров Иван Александрович
Проза:
классическая проза
русская классическая проза
8.93
рейтинг книги
Обрыв

Кодекс Охотника. Книга IX

Винокуров Юрий
9. Кодекс Охотника
Фантастика:
боевая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга IX

Бастард

Майерс Александр
1. Династия
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард

Бастард Императора. Том 11

Орлов Андрей Юрьевич
11. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 11

Кодекс Крови. Книга ХIV

Борзых М.
14. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Крови. Книга ХIV

Древесный маг Орловского княжества 3

Павлов Игорь Васильевич
3. Орловское княжество
Фантастика:
аниме
сказочная фантастика
фэнтези
попаданцы
гаремник
5.00
рейтинг книги
Древесный маг Орловского княжества 3

Черный маг императора 3

Герда Александр
3. Черный маг императора
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора 3

Древесный маг Орловского княжества 6

Павлов Игорь Васильевич
6. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 6