In acest tutorial e prezentat modul de creare a unei animatii a carei miscari sunt sincronizate cu un interval de timp specificat. Pentru acest tip de animatie facuta cu ActionScript se foloseste Clasa Timer.
Timer este o clasa utilizata pentru executarea codurilor dupa un interval de timp specificat.
Fiecare obiect "Timer" declanseaza evenimentul TimerEvent.TIMER la o anumita frecventa de timp specificata. Astfel, functia apelata prin acest eveniment se executa repetat, la acel interval de timp, iar prin modificarea frecventa a aspectului vizual al unui obiect poate crea efectul de animatie.
Animatia creata cu TimerEvent nu depinde de numarul de cadre pe secunda (precum la cea cu ENTER_FRAME), ci de frecventa de timp setata la utilizarea clasei Timer. Aceasta animatie poate fi afectata daca sistemul sau executia aplicatiei Flash este ocupata in momentul cand trebuie apelata functia la evenimentul TimerEvent.TIMER.
var dimens:Number = 0.12; // Coeficient de dimensionare a obiectului (12%) var move_y:Number = 23; // Distanta Y de deplasare var rotire:Number = 30; // Grade pt. rotire // Creare instanta la clasa Timer, cu intervalul jumatate de sec. si repetari 6 var jumpTimer:Timer = new Timer(500, 6); // Functia care va fi apelata la evenimentul TimerEvent.TIMER function jumpLand(evt:TimerEvent):void { // Modifica dimensiunile obiectului cu valoarea coeficientului (%) de la "dimens" drept1.scaleX += dimens; drept1.scaleY += dimens; drept1.rotation -= rotire; // Roteste drept1.y -= move_y; // Muta pe verticala } // Functia care va fi apelata la evenimentul TimerEvent.TIMER_COMPLETE function atTimerComplete(evt:TimerEvent):void { // Schimba in sens opus valoarea de dimensionare si miscare pe verticala dimens *= -1; move_y *= -1; evt.target.reset(); // Reseteaza numarul de repetari (sa inceapa de la 0) evt.target.start(); // Porneste iar declansarea TIMER } // Inregistrare eveniment TimerEvent.TIMER, la instanta "jumpTimer" jumpTimer.addEventListener(TimerEvent.TIMER, jumpLand); // Inregistrare eveniment TimerEvent.TIMER_COMPLETE, la instanta "jumpTimer" jumpTimer.addEventListener(TimerEvent.TIMER_COMPLETE, atTimerComplete); jumpTimer.start(); // Porneste declansarea evenimentului TIMER- Cand numarul de repetari ajunge la valoarea specificata (aici 6), se declanseaza evenimentul TimerEvent.TIMER_COMPLETE. In functia apelata de acesta (atTimerComplete) se schimba sensul miscarii animatiei, se reseteaza numarul de repetari si porneste iar detectarea TimerEvent.TIMER, care prin reset incepe de la 0. Si tot asa, se obtine o executie continua a miscarii.
<div style="width: 80%; border: 3px solid #888888;">Continut</div>
#un_id { transform: skew(20deg, 25deg); -ms-transform: skew(20deg, 25deg); /* IE 9 */ -webkit-transform: skew(20deg, 25deg); /* Safari and Chrome */ }
var rightnow = new Date(); alert( rightnow.toString() );
$arr = arra("abc", "<p>xyz</p>", "<em>PHP</em>"); // aplica functia strip_tags() ca sa stearga tag-urile HTML din fiecare element din %arr $arr = array_map("strip_tags", $arr); }
On Saturday I visit my grandparents. - Sambata imi vizitez bunicii.
Sábado visito mis abuelos. - Sambata imi vizitez bunicii.