WebDix
Это веб-диз, детка!Выпуск #1 | 19 июня 2006
Быстрый переход
WebDix › Выпуск #1 › Flash

Эффект: "дрожание"

Хотелось бы рассказать о эффекте, который часто применяется, а именно дрожание. В чём его суть? При наведении на кнопку, она начинает дрожать. Сначала незаметно, потом заметнее, дрожь становится сильнее и сильнее, пока не достигает апогея, затем идёт на спад. И всё это происходит пока курсор мыши наведён на кнопку.Теперь как это сделать.Рисуем квадрат, делаем из него мувиклип и называем его btn (кнопка будет).Затем в 1-й кадр вставляем такой код.

Код
xpos=btn._x//начальная позиция кнопки по оси x
btn.onRollOver=function(){//при наведении
&nbsp&nbsp speed=0//начальная скорость
&nbsp&nbsp bge=0.01//насколько прибавлять скорость
maxspeed=1//максимальная скорость, не советую прибавлять, иначе будет похоже на землятрясение.

bt=true;//эту переменную оставьте без изменения
&nbsp&nbsp tremble=true;//тоже самое, показывает, что дрожание должно увеличиваться
&nbsp&nbsp&nbsp&nbsp _root.onEnterFrame=function(){
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp if(speed <=maxspeed and tremble==true){
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp if(bt==true){
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp speed +=bge
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp _root.btn._x=xpos
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp _root.btn._x+=speed;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp bt=false;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp}
&nbsp&nbsp&nbsp&nbsp&nbsp&nbspelse{
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp_root.btn._x-=2* speed
&nbsp&nbsp&nbsp&nbsp&nbsp&nbspbt=true;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp }
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp}
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp else {
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp tremble=false;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp }
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp if(speed >=0 and tremble==false){
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp if(bt==true){
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp speed -=bge
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp _root.btn._x=xpos
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp _root.btn._x+= speed;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp bt=false;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp}
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp else{
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp _root.btn._x-=2* speed;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp bt=true;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp }
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp }
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp else{
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp tremble=true;
&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp}
&nbsp&nbsp&nbsp&nbsp}
}
btn.onRollOut=function(){//при убирании курсора с кнопки
&nbsp&nbsp delete _root.onEnterFrame;
&nbsp&nbsp _root.btn._x=xpos
}

Кратко опишу сам процесс дрожания. Код заставляет мувиклип дрожать влево и вправо, то есть смещаться на определённое расстояние влево и вправо (несложно добавить дрожание и по вертикали) При этом расстояние каждые раз увеличивается. И кажется, что скорость дрожания тоже увеличивается (хотя это и не так), при достижении апогея (maxspeed), процесс идёт в обратную сторону. Дрожите на здоровье!
« Летающий шарикСодержаниеНовости »
Журнал WebDix («Это веб-диз, детка!»), 2006-2008.
Сайт журнала: webdix.ru · форум: rusforumz.com
Об архиве
Рейтинг Old-Web