- •Московский государственный университет
- •If (canvas.GetContext){
- •Рисование прямоугольников
- •Рисование составных фигур Составные фигуры состоят из нескольких соединенных простых объектов (таких как линии, круги и т.Д.)
- •Структура программы выглядит следующим образом
- •X.BeginPath();
- •X.BeginPath();
- •X.FillRect(20,20,200,200);
- •X.FillRect(50,40,55,55);
- •Папоротник
- •Гипно-спираль
- •Вставка изображений
- •4. Вложение изображения с помощью data: url
- •Рисование изображений
- •Пример 1 использования изображения
- •Масштабирование
- •Пример 2 использования изображения
- •Разрезание изображений
- •Пример 3 использования изображения
- •Пример галереи
- •Javascript графика: Объект Image.
- •Javascript графика: src и lowsrc.
- •Изменение картинки.
- •Мультипликация в JavaScript. Мультипликация.
- •Запуск мультипликации
- •Запуск и остановка мультипликации
Запуск и остановка мультипликации
Уметь запустить мультипликацию конечно хорошо, но нередко возникает необходимость управлять воспроизведением мультипликации. Например создание слайд–шоу на вашей странице, которое может быть запущенно и остановленно путем нажатия на различные элементы управления.
Рассмотрим простой пример, реализующий управление воспроизведением анимации:
<script>
i=1;
flag=0;
function run3()
{
if (flag==0)
{
eval("document.i3.src='
../img/run"+i+".gif'");
i++;
if(i>3) i=1;
}
setTimeout("run3();",500);
}
</script>
<form >
<input type="button"
onClick="if (flag==0) flag=1;
else flag=0"
value="остановить/возобновить">
</form>
<a href="javascript:run3();
void(0);">
<img name="i3" src="
../img/run1.gif">
</a>
В нашем примере мы создаем дополнительную кнопку изменяющую переменную flag с 0 на 1 при нажатии. И немного доработали наш скрипт. Теперь внутри скрипта происходит проверка условия равна ли переменная flag 0 и если равна, то происходит отображение анимации, а если нет то картинка остается статической.
Конечно это далеко не единственный способ управления мультипликацией. Ведь например, можно использовать метод clearTimeout().
Как вы и сами прекрасно понимаете при помощи этого метода можно уничтожить порождение потоков вычислений, заставляющих бесконечно много раз повторяться цикл, тем самым остановив мультипликацию.