Probleme Filme von extern laden

matzem

Mitglied
Hallo,
ich bin ein Designer der ab und an Flash bastelt. Normalerweise funktioniert's auch, aber jetzt weiß ich mir nicht zu helfen. Ich arbeite an meinem Portfolio. Die Fla-Datei funktioniert sowiet. Durch klick auf die Nav soll ein externer Moviclip in einen MC auf die Oberfläche geladen werden. Klickt man auf einen anderen Button, wird der aktuelle Movieclib aus dem Filmbereich gezogen (über MC out) und der aktive in seinen MC auf den Hauptfilm geladen. Der Clou, die einzelnen MCs sollen der Navigation folgen und in einem bestimmten Abstand stehen bleiben. Die Sound-MC folgt dem geladenen MC. Mein Problem: Die Filme werden nicht geladen.

Auf dem HF liegt folgendes Script (beim Start geladen):
Code:
navi.follow_obj = top;
headline.follow_obj = navi;
_root.mainactive = "";
_root.subactive = "";
_root.closerobj = "home";
_root.section = "";
_root.snd = "";
_root.sfo = home;
loadMovie("header_01.swf", _root.top.container_header);
numProjekte = 2;
home.project_url = "home.swf";
home.follow_obj = headline;
_root.home.gotoAndStop(2);
sound.project_url = "scontrol.swf";
sound.follow_obj = _root.sfo;
_root.sound.gotoAndStop(2);

funktioniert, wird auch geladen. Für jeden Movieclip hab ich folgendes Script im HF:
Code:
MovieCLip.prototype.homearea = function ()
{
    home.project_url = "home.swf";
    home.follow_obj = headline;
    _root.home.gotoAndStop(2);
    closeobj = _root.closerobj;
    closeobj.follow_obj = _root.out;
};
Auf dem Button wird durch die Action deffiniert:
Code:
onClipEvent (load)
{
    this.but.main_but = "HOME";
    this.active = "_root.navi.but_01";
    this.section = "homearea";
    closerobj = "home";
    this.snd = "_root.home_snd";
    this.sfo = _root.home;
}

und aktiv im Button die Action:
Code:
on (press)
{
    _root.subactive = "";
    _root.section = this.section;
    _root.headline.gotoAndPlay(closerobj);
    obj = _root.mainactive;
    trace(obj);
    obj.gotoAndPlay(12);
    _root.mainactive = this.active;
    if (this.closerobj != _root.closerobj)
    {
        sect = _root.section;
        sect();
        _root.closerobj = this.closerobj;
    } // end if
    _root.sfo = this.sfo;
    _root.sound.follow_obj = _root.sfo;
    trace(this.sfo);
    _root.snd = this.snd;
    rollosnd = _root.snd;
    rollosnd.start();
}

soweit klar, funktioniert aber nicht. Ich hoffe jemand von euch kann mir helfen, ich weiß absolut nicht mehr weiter.

Matzem
 
Zuletzt bearbeitet von einem Moderator:
variable eingefügt

Ich habe auf dem HF jetzt die Movieclips in eine Variable gepackt, funktioniert auch nicht....blöd

MovieClip.prototype.homearea = function ()
{
var _l1 = _root;
home.project_url = "home.swf";
home.follow_obj = headline;
_l1.home.gotoAndStop(2);
closeobj = _l1.closerobj;
closeobj.follow_obj = _l1.out;
};

hat keiner ne idee, stell auch meine Fla rein wenn es nicht nachvollziebar ist.

Gruß

matzem
 
Hi,

1. bitte setze Code immer in Code- oder PHP-Tags, damit er lesbar wird (bei Deinem ersten Beitrag habe ich das mal eben gemacht, beim zweiten ändere es bitte selber).

2. Poste wenn möglich mal die Datei; Debugging mithilfe des AS-Editors und der Vorschau ist nämlich um vieles einfacher als rein im Kopf. ;)

Gruß
.
 
Hallo Tobias,

sorry wegen der Tags. Ich hab schon lange nix mehr gepostet und gestern war's schon im übermüdeten Zustand. Ich habe die Dateien im Anhang. Es wäre toll wenn Du es Dir einmal anschauen könntest.

Danke im vorraus

matzem
 

Anhänge

  • Archiv.zip
    56 KB · Aufrufe: 20
Hi,

ich habs mir mal eben durchgesehen, aber ich muss zugeben, ich blicke noch nicht ganz durch (die Struktur ist sehr verschachtelt und uneindeutig).

- Wo genau übergibst Du den einzelnen Navibuttons die Dateinamen der einzuladenen Filme?

- wo finde ich die loadMovie-Aktion zum Laden dieser Inhalte?

- im Prototype weist Du den MCs die Eigenschaft closeobj ("closeobj = _root.closerobj;") zu - in den Buttons sprichst Du aber von "this.closerobj;" - handelt es sich um zwei verschiedene Eigenschaften (dann sind die Bezeichner aber uneindeutig gewählt), oder ist es ein Tippfehler?

- wozu brauchst Du die Prototypes, nur um einer Anzahl MovieClips diverse Variablen zuzuordnen?

Gruß
.
 
- Wo genau übergibst Du den einzelnen Navibuttons die Dateinamen der einzuladenen Filme?

Die Buttons direkt haben die Zuordnung zu den einzelnen MovieClips auf den Buttons, Buttons selber:
Code:
this.section = "workarea";

- wo finde ich die loadMovie-Aktion zum Laden dieser Inhalte?
die liegen im leeren MC z.B. work im HF.

- im Prototype weist Du den MCs die Eigenschaft closeobj ("closeobj = _root.closerobj;") zu - in den Buttons sprichst Du aber von "this.closerobj;" - handelt es sich um zwei verschiedene Eigenschaften (dann sind die Bezeichner aber uneindeutig gewählt), oder ist es ein Tippfehler?

Da muß ich nochmal nachschauen, hab vorher auf MX gearbeitet und dann bin ich auf MX 2004 gewechselt. Das geanze ist in Etappen entstanden, muß ich nachschauen.

Code:
trace("loading Movie:" + project_url);
loadMovie(project_url, container);


- wozu brauchst Du die Prototypes, nur um einer Anzahl MovieClips diverse Variablen zuzuordnen?

Ich dachte mir es ist die einfachste Weg, wenn ich die Subnavigation später erweitern möchte. Es soll beim laden der Eindruck entstehen, daß die MCs wie Karten von unten nach oben geschoben und wieder retour gehen.

Viele Grüße

matzem
 
Hi,

naja: Prototypes sind dafür IMHO der falsche Ansatz: Stinknormale Funktionen würden es auch tun. ;)

Soweit ich das sehe, werden die Inhalte geladen, sobald die dazugehörigen Prototypes aufgerufen werden (z.B. _root.contactarea) - ich kann aber immernoch nicht sehen, wo (bzw. wann) das geschieht - genauer gesagt: Sie werden nicht aufgerufen, da trace-Aktionen in den Prototypes nicht ausgeführt werden.

Gruß
.
 
Sorry, ich binetwas verstrahlt, ich habe gerade 2 baustellen gleichzeitig. Nochmal zu

- im Prototype weist Du den MCs die Eigenschaft closeobj ("closeobj = _root.closerobj;") zu - in den Buttons sprichst Du aber von "this.closerobj;" - handelt es sich um zwei verschiedene Eigenschaften (dann sind die Bezeichner aber uneindeutig gewählt), oder ist es ein Tippfehler?

Klickst Du auf die Navigation, wird ein MC geladen, der den Bereich beschrieben soll. Klickst Du auf die Subnavigation (also den Unterbereich der Navigation) wird eine neuer MC geladen, darum:

closeobject = für die Navigation

closerobject = auf der Subnav, für die einzelnen Unterbereiche




Ich hoffe ich habe es so formuliert das man es versteht

viele Grüße

matzem
 
Ok,

aber dennoch:
Klickst Du auf die Navigation, wird ein MC geladen
genau das passiert eben nicht, da beim Klick auf die Buttons nur diverse Variablen gesetzt werden, aber keine Funktionen aufgerufen (und ein permanenter Überwacher auf _root, der auf diese Ännderungen reagieren könnte, existiert auch nicht).

Gruß

P.S.: Bitte verwende für Zitate die QUOTE-Tags; es fällt sonst zu schwer, die zitierten von Deinen Passagen zu unterscheiden.
.
 
Hallo Tobias,

(Quote Tags? keine Ahnung wie das geht,. Der Link imPosting von Basileus ist tot.)

Naja, wie Du an meinem Flashdokument siehst bin ich eben nur Kommunikationsdesigner, und bin gerade dabei mir das AS intenisver beizubringen. Ich bin Dir super dankbar daß Du mir bei meinem Problem hilfst. Also muß ich auf dem Button der Nav noch loadMovie in einer Funktion deffinieren?

Gruß

matzem
 

Neue Beiträge

Zurück