Интерактивная анимация HTML5. Методические указания

Текст
Читать фрагмент
Отметить прочитанной
Как читать книгу после покупки
Интерактивная анимация HTML5. Методические указания
Шрифт:Меньше АаБольше Аа

© Михаил Ботов, 2017

ISBN 978-5-4485-6305-8

Создано в интеллектуальной издательской системе Ridero

1 Анимация с помощью функции setinterval

Простую анимацию можно организовать при помощи функции setInterval (); Она циклически вызывает переданный ей метод через заданные интервалы времени до тех пор, пока не будет остановлена функцией clearInterval ();

Пример – смещение блока разметки вправо:

<script>

function move (elem) {

var left = 0; // начальное значение

function frame () {// функция для отрисовки

left++

elem.style. left = left + ’px’

if (left == 100) {

clearInterval (timer); // завершить анимацию

}

}

var timer = setInterval (frame, 100) // рисовать каждые 100мс

}

</script>

<div onclick="move(this.children [0])» class=«example_path»>

<div class=«example_block»> </div>

</div>

2 Анимация на jquery

2.1 События

Для реакции на действия пользователя и внутреннего взаимодействия элементов скриптов существует механизм событий.

Событие – это сигнал от браузера о том, что что-то произошло. Существует возможность определить реакцию скрипта на возникновение того или иного события, назначив ему функцию-обработчик. Данная функция (или функции, т. к. можно привязать несколько обработчиков к одному событию) будет вызываться всякий раз, когда нужное событие произойдет (например, пользователь кликнет по изображению). На вход функции обработчику передается специальный объект с информацией о произошедшем событии.

Существует много видов событий. Примеры функций библиотеки jQuery, позволяющие удобно привязывать обработчики к определенным событиям, показаны в приведенных ниже четырех таблицах.

Базовые события


События мыши


События загрузки страницы


События браузера


Всплывание события и его остановка

Нужно сказать, что при наступлении события обработчики сначала срабатывают на самом вложенном элементе, затем на его родителе, затем выше и так далее, вверх по цепочке вложенности. Это называется всплыванием события.

Всплытие идёт вверх по иерархии DOM. Обычно событие будет всплывать наверх и наверх, до элемента <html>, а затем до document, а иногда даже до window, вызывая все обработчики на своем пути. Но любой промежуточный обработчик может решить, что событие полностью обработано, и остановить всплытие.

Для остановки всплытия нужно вызвать метод event.stopPropagation ().

Купите 3 книги одновременно и выберите четвёртую в подарок!

Чтобы воспользоваться акцией, добавьте нужные книги в корзину. Сделать это можно на странице каждой книги, либо в общем списке:

  1. Нажмите на многоточие
    рядом с книгой
  2. Выберите пункт
    «Добавить в корзину»