Skript jazyka ActionScript® umožňuje ovládat časovou osu za běhu. S použitím skriptu jazyka ActionScript můžete ve svých souborech FLA vytvářet interakci a další možnosti, které nejsou pouze se samotnou časovou osou možné.
Skript jazyka ActionScript® umožňuje ovládat časovou osu za běhu. S použitím skriptu jazyka ActionScript můžete ve svých souborech FLA vytvářet interakci a další možnosti, které nejsou pouze se samotnou časovou osou možné.
Chcete-li se naučit, jak ovládat časovou osu pomocí skriptu jazyka ActionScript, přečtěte si diskuzi o časových osách a skriptu jazyka ActionScript ve webové nápovědě.
Absolutní cesty
Absolutní cesta začíná názvem úrovně, do které je dokument načten, a pokračuje seznamem zobrazení až po cílovou instanci. Můžete použít zástupce _root, který odkazuje na nejvrchnější časovou osu aktuální úrovně. Například akce ve filmovém klipu california, která odkazuje na filmový klip oregon by mohla použít absolutní cestu _root.westCoast.oregon.
První dokument otevřený v přehrávači Flash Player se načte do úrovně 0. Každému dalšímu načtenému dokumentu musíte přidělit číslo úrovně. Pokud v jazyce ActionScript použijete absolutní odkaz k odkazu na načtený dokument, použijte formulář _levelX, kde X je číslo úrovně, na kterou se dokument načítá. Například první dokument otevřený v přehrávači Flash Player se jmenuje _level0 a dokument načtený do třetí úrovně se jmenuje _level3.
Aby mezi sebou mohly komunikovat dokumenty na různých úrovních, musíte v cílové cestě použít název úrovně. Následující příklad ukazuje, jak by instance portland oslovila instanci atlanta umístěnou ve filmovém klipu s názvem georgia (georgia je na stejné úrovni jako oreg ):
_level5.georgia.atlanta
Můžete použít zástupce _root, který odkazuje na hlavní časovou osu aktuální úrovně. Pro hlavní časovou osu zástupce _root zastupuje _level0, když na ni míří odkaz filmového klipu, který je také na úrovni _level0. Pro dokument načtený do úrovně _level5 je zástupce _root totéž jako _level5, když na něj míří odkaz filmového klipu, který je také na úrovni 5. Pokud jsou například filmové klipy jižní karolína a florida načteny na stejnou úroveň, akce vyvolaná z instance jižní karolína by mohla použít následující absolutní cestu k cílové instanci florida:
_root.eastCoast.florida
Relativní cesty
Relativní cesta závisí na vztahu mezi řídicí časovou osou a cílovou časovou osou. Relativní cesty mohou adresovat cíle jen v rámci své vlastní úrovně v přehrávači Flash Player. Nemůžete například použít relativní cestu v akci na úrovni _level0, která míří na časovou osu na úrovni _level5.
V relativní cestě použijte klíčové slovo this k odkazu na aktuální časovou osu v aktuální úrovni; zástupce _parent použijte k označení rodičovské časové osy aktuální časové osy. Zástupce _parent můžete použít opakovaně k přechodu o jednu úroveň výš v hierarchii filmových klipů v rámci téže úrovně přehrávače Flash Player. Například _rodič._rodič řídí filmový klip v hierarchii o dvě úrovně výše. Nejvrchnější časová osa na libovolné úrovni v přehrávači Flash Player je jedinou časovou osou s hodnotou _parent, která je nedefinovaná.
Akce v časové ose instance charleston, umístěná o jednu úroveň níže než jižní karolína, by mohla použít následující cílovou cestu k cílové instanci jižní karolína:
_nadřazený
Chcete-li cílit instanci eastCoast (o jednu úroveň výše) z akce v charleston, můžete použít následující relativní cestu:
_nadřazený._rodič
Chcete-li cílit instanci atlanta z akce v časové ose charleston, můžete použít následující relativní cestu:
_rodič._rodič.georgia.atlanta
Relativní cesty jsou užitečné pro opakované používání skriptů. Můžete například připojit následující skript k filmovému klipu, který zvětší jeho rodiče o 150 %:
onClipEvent (load) {_rodič._xscale
= 150; _rodič._yscale = 150;
Tento skript lze opakovaně použít tak, že ho připojíte k libovolné instanci klipu.
Flash Lite 1.0 a 1.1 podporují připojování skriptů pouze k tlačítkům. Připojování skriptů k filmovým klipům není podporováno.
Ať už použijete absolutní nebo relativní cestu, identifikujete proměnnou v časové ose nebo vlastnost objektu s tečkou (.) následované názvem proměnné nebo vlastnosti. Například následující příkaz nastaví proměnnou name v instanci form na hodnotu "Gilbert":
_root.form.name = "Gilbert";
Používání absolutních a relativních cílových cest
Pomocí ActionScriptu lze zasílat zprávy od jedné časové osy jiné časové ose. Časové ose obsahující akci se říká řídicí časová osa a časové ose, která akci přijímá, se říká cílová časová osa. Například v posledním snímku jedné časové osy by mohla být akce, která říká jiné časové ose, aby se spustila. Chcete-li vytvořit odkaz na cílovou časovou osu, musíte použít cílovou cestu, která udává umístění filmového klipu v seznamu zobrazení.
Následující příklad ukazuje hierarchii dokumentu s názvem westCoast na úrovni 0, která obsahuje tři filmové klipy: california, oregon a washington. Každý z těchto filmových klipů zase obsahuje dva filmové klipy.
_úroveň0
západní pobřeží
kalifornie
sanfrancisco
bakersfield
oregon
portland
ashland
washington
olympia
ellensburg
Stejně jako na webovém serveru i v aplikaci Animate je možné k adresování každé časové osy použít dva způsoby: absolutní cestu nebo relativní cestu. Absolutní cesta instance je vždy úplnou cestou od názvu úrovně bez ohledu na to, která časová osa akci vyvolá; například absolutní cesta k instanci california je _level0.westCoast.california. Relativní cesta se liší při volání z různých umístění; například relativní cesta k kalifornii z sanfranciska je _nadřazená, ale z portland je _rodič._rodič.{kalifor{ 9}.
Určování cílových cest
Pokud chcete řídit filmový klip, načtený soubor SWF nebo tlačítko, musíte zadat cílovou cestu. Můžete ji zadat ručně v dialogovém okně Vložit cílovou cestu nebo vytvořit výraz, který vyhodnotí cílovou cestu. Pokud chcete zadat cílovou cestu pro filmový klip nebo tlačítko, musíte klipu nebo tlačítku přiřadit název instance. Načtený dokument nevyžaduje název instance, protože jako název instance používáte jeho číslo úrovně (například _level5).
Přiřazení názvu instance k filmovému klipu nebo tlačítku
Určení cílové cesty s použitím dialogového okna Vložit cílovou cestu
Ta se stane řídicí časovou osou.
Zadání cílové cesty ručně
Ta se stane řídicí časovou osou.
Použití výrazu jako cílové cesty
Ta se stane řídicí časovou osou.
V poli parametru zadejte výraz, který se vyhodnotí na cílovou cestu.
Kliknutím vložte do skriptu textový kurzor. Pak v kategorii Funkce v panelu nástrojů Akce poklikejte na funkci targetPath. Funkce targetPath převede odkaz na filmový klip do podoby řetězce.
Kliknutím vložte do skriptu textový kurzor. Potom v kategorii Funkce v panelu nástrojů Akce vyberte funkci eval. Funkce eval převede řetězec do podoby odkazu na filmový klip, jehož pomocí lze vyvolávat metody, jako je play.
Následující skript přiřadí proměnné i hodnotu 1. Pak pomocí funkce eval vytvoří odkaz na filmový klip a přiřadí ho proměnné x. Proměnná x je nyní odkazem na instanci filmového klipu a může vyvolávat metody objektu MovieClip.
i = 1; x = eval("mc"+i); x.play(); // toto je ekvivalent mc1.play();Funkci eval také můžete použít k přímému volání metod, jak je vidět v následujícím příkladu:
eval("mc"+ i).play();
Vytvářejte interaktivní animace pomocí aplikace Animate
Navrhujte animace pro kreslené filmy, bannery, hry a web.