Flash gomb kattintás után nem jól viselkedik
Sziasztok!
Flash gombot készítettem, ami persze nem gomb, hanem mozi, és csak annyit tud, hogy az onMouseOver és onMouseOut eseményekre fokozatosan megváltozik a háttérszíne és vele együtt a betű színe is, kattintásra pedig egy JavaScript eseményt indít.
Eddig működik is szépen, funkcionálisan minden rendben van vele.
Egyetlen problémám van: a kattintás után vizuálisan "elromlik" a működése, a háttérszín továbbra is változik, de a betűszín úgymarad, ahogy kattintáskor volt.
Már sokmindennel próbálkoztam (pl. gotoAndPlay(1)), végre is hajtódik, de betűszín csak nem akar animálódni soha többé.
De hogy legyen egy kis csavar is a dologban, kattintáskor egy TransitionManager segítségével kicsit "megmozgatom" a gombfeliratot, biztosan ez kavar be.
Hogy tudnám visszavarázsolni az egész mozit a kiindulási állapotba?
Természetesen a TransitionManager lefutását egy Listener objektum kezeli le, itt kellene mindent visszaállítanom, de nem tudom, hogyan.
Van ötletetek?
Az idevágó help példa:
■ Flash gombot készítettem, ami persze nem gomb, hanem mozi, és csak annyit tud, hogy az onMouseOver és onMouseOut eseményekre fokozatosan megváltozik a háttérszíne és vele együtt a betű színe is, kattintásra pedig egy JavaScript eseményt indít.
Eddig működik is szépen, funkcionálisan minden rendben van vele.
Egyetlen problémám van: a kattintás után vizuálisan "elromlik" a működése, a háttérszín továbbra is változik, de a betűszín úgymarad, ahogy kattintáskor volt.
Már sokmindennel próbálkoztam (pl. gotoAndPlay(1)), végre is hajtódik, de betűszín csak nem akar animálódni soha többé.
De hogy legyen egy kis csavar is a dologban, kattintáskor egy TransitionManager segítségével kicsit "megmozgatom" a gombfeliratot, biztosan ez kavar be.
Hogy tudnám visszavarázsolni az egész mozit a kiindulási állapotba?
Természetesen a TransitionManager lefutását egy Listener objektum kezeli le, itt kellene mindent visszaállítanom, de nem tudom, hogyan.
Van ötletetek?
Az idevágó help példa:
import mx.transitions.*;
import mx.transitions.easing.*;
var myTransitionManager:TransitionManager = new TransitionManager(img1_mc);
myTransitionManager.startTransition({type:Iris, direction:Transition.OUT, duration:1, easing:None.easeNone,startPoint:5, shape:Iris.CIRCLE});
var myListener:Object = new Object();
myListener.allTransitionsOutDone = function(eventObj:Object) {
trace("allTransitionsOutDone event occurred.");
};
myTransitionManager.addEventListener("allTransitionsOutDone", myListener);
mozgatás
szerintem is a TransitionManager tesz keresztbe! amit leírtál, azok alapján nem értem, hogy miért választottad a nehezebb utat... nem lenne egyszerűbb a gombon lévő szöveget simán motion tween-el animálni?
üdv
Tudom hogy a TM a ludas...
Mit értesz nehezebb út alatt? Tween-t használok a színátmenetekre (háttér és betűszín is), a TM feladata csupán annyi, hogy a kattintás eseményt látványossá tegye (megrázkódó felirat), ezt nehezen oldanám meg motion tween-nel, nem?
Vagy lehet ügyesebben?
Nem vagyok Flash guru, ez csak egy apró látványelem a nagy honlapon (ami persze nem Flash)
rázkódó felirat
A script meg annyi, hogy amikor a szöveg fölé húzod az egeret, akkor játsza le a Movie Clip tartalmát:
mc.stop(); //betöltéskor ne indítsa el rögtön az effectet
mc.onRollOver = function(){
mc.gotoAndPlay(1);
}
ha adsz egy mailcímet, elküldök egy példát.
üdv