Mr. Burns: Mit JavaScript ein Flash vorladen?

Hallo,

ich benötige eine (Javascript) Funktion, die mir ein Flash im Hintergrund vorlädt.
Das Falsh selber kann ich nicht zum vorladen nehmen, da es nicht von mir erstellt ist und ich nicht auf den Sourceode der SWG Datei zugreifen kann.
Also brauche ich irgendeine Funktion die mir ein Flash vorlädt.

Mit Images kann man es ja so machen:

...
I1 = new Image();
I1.src = "/images/i1.jpg";
...

gibt es sowas auch für Flash?
Hintergrund ist, ich habe immer 5 große Flashs auf meiner Seite, und würde gerne einen Fortschrittsbalken erstellen, immer wenn ein Flash geladen wurde geht der Balken um ein Fünftel weiter!

Danke!

  1. Hi,

    ich benötige eine (Javascript) Funktion, die mir ein Flash im Hintergrund vorlädt.

    warum? Die Wartezeit ist die selbe, lediglich das vorläufige Ergebnis fehlt. Der User wartet also ebenso lang, weiß aber nicht wofür. Dazu kommt, dass JavaScript nicht unterscheiden kann, ob beim User Flash überhaupt angezeigt werden kann und darf - mit dem Effekt, dass die User im Durchschnitt _länger_ warten.

    Mit Images kann man es ja so machen:

    [...]

    gibt es sowas auch für Flash?

    Überlege Dir, was bei der Image-Variante eigentlich passiert, und beantworte Dir die Frage selbst.

    Hintergrund ist, ich habe immer 5 große Flashs auf meiner Seite,

    Deine Site ist also unbenutzbar, und dort, wo sie benutzt werden kann, ist sie nervig. Danke für die Warnung.

    und würde gerne einen Fortschrittsbalken erstellen, immer wenn ein Flash geladen wurde geht der Balken um ein Fünftel weiter!

    Der User sieht also immer noch nichts, selbst wenn er etwas sehen könnte. Toll. Du steckst viel Aufwand in das Vorhaben, sämtliche Besucher zu vergraulen. Wozu machst Du eigentlich eine Website?

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo Cheatah,

      danke für deine tolle Hilfe. Ich habe nicht gebeten über Sinn und unsinn von Flashs bzw. Vorladen von Flash, Wartezeiten etc. zu philosophieren.
      Ich habe einen ernsten Hintergrund und hier nur die allernötigsten Informationen gegeben um mein Problem klarzumachen.

      Was soll denn der Satz bitte:

      Deine Site ist also unbenutzbar, und dort, wo sie benutzt werden kann, ist sie nervig. Danke für die Warnung.

      Du weißt doch garnicht was ich machen will!
      Ich möchte eine Seite machen, in denen meine über 1000 Flash Animationen zu sehen sind. Und jedesmal möchte ich 5 davon anzeigen lassen.
      Der User, der auf meine Seite geht, weiß also, dass es sich um Flash Animationen handelt, nimmt also die Wartezeiten in Kauf!

      Nun möchte ich aber einen Fortschrittsbalken anzeigen, um dem Benutzer eine ungefähre Vorstellung zu geben, wie lange er warten muß bis alle Flashs geladen sind!

      Also Cheatah, nicht vorschnell über etwas Urteilen, von dem man nichts genaues weiß!

      Also nochmal:
      Hat jemand also eine Idee, wie ich mit Javascript diese Flash-Animationen (jeweils 5) vorladen kann bzw. wie ich dafür einen Fortschrittsbalken realisieren kann?

      Danke für weitere HIlfe!

      1. Hat jemand also eine Idee, wie ich mit Javascript diese Flash-Animationen (jeweils 5) vorladen kann bzw. wie ich dafür einen Fortschrittsbalken realisieren kann?

        Das geht nicht. Der Browser weiß nichts von Flash und hat auch keine Methoden dafür.

        Struppi.

        1. Danke Struppi,

          wenigstens keine Dumme Laberei um Dinge, die an eine andere Stelle gehören.

          Meine Idee war halt irgendwie die Flashs in einem DIV darzustellen nur unsichtbar, dadurch werden Sie ja geladen.
          Das Problemm dabei ist ich kann den Ladevrogang nicht kontrollierern (um den Fortschrittsblken abzudaten) und Flashs, die Sound enthalten hört man, obwohl das DIV, indem sie sich befinden 'hidden' ist!

          gibts noch Ideen?

          Danke!

          1. Also ich würde das ja mit Flash selber lösen.
            Ich würde eine große Flashbühne erstellen und in diese
            lade ich per loadMovieClip() die kleinen SWFs.
            In Flash kannst Du Dir dann einen schönen Statusbalken
            bauen der Dir den Ladezustand deiner Filme zeigt.

            Falls Dir die Idee gefällt würde ich mich an Deiner Stelle allerdings ans flashforum.de wenden.

            Gruß Daniel

      2. hi,

        Ich möchte eine Seite machen, in denen meine über 1000 Flash Animationen zu sehen sind.

        Kann es sein, dass deine Definition von "deine" dabei etwas seltsam ist - und in Wirklichkeit bei anderen Menschen eher "im Netz zusammengeklau(b)t" heißen würde ...?

        Schließlich schriebst du ja eingangs:

        Das Falsh selber kann ich nicht zum vorladen nehmen, da es nicht von mir erstellt ist und ich nicht auf den Sourceode der SWG Datei zugreifen kann.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Och Leute!

          is doch egal wo die Flashs herkommen, ich habe eine Sammlung interessanter Flashs. Dabei meine ich mit MEINE nicht, dass ich Sie erstellt habe.
          Und ich werde wohl nicht irgendwo geklaute Flashs in einer Sammlung anzeigen, Meingott!
          Ich stelle fest das Leute mit wenig Fachwissen hier nur philosophieren was Sinn macht und was nicht anstatt zur Lösung beizutragen!

          Also gibt es eine Möglichkeit Flashs mit JavaScript vorzuladen oder nicht?

          1. Also gibt es eine Möglichkeit Flashs mit JavaScript vorzuladen oder nicht?

            Nein (sagte ich das nicht bereits?).

            Evtl. bietet das Plugin eine Funktion an um den Ladestatus mit JS abzufragen, aber da musste Flashfachleute fragen.

            Struppi.

            1. Hallo,

              also wenn Du das sagst es nicht geht, heißt das für mich noch lange nicht, dass es wirklich nicht geht.
              Du bist doch nicht der Entwickler von Flash und/oder Javascript und somit allwissend!

              Ich kenne doch Deinen Wissensstand nicht und hole mir deshalb mehrere Meinungen ein!

              Habe schon oft erlebt, dass einer im Forum sagt nee, geht nicht.
              Später gibts n Posting das ne Lösung anbietet oder ich finde selber eine.

              Also nicht immer alles gleich persönlich nehmen ;-)

              1. Du bist doch nicht der Entwickler von Flash und/oder Javascript und somit allwissend!

                Ich sagte ja bereits, wenn kann es nur über die Schnittstelle zu Flash gehen, evtl. gibt es eine Funktion die dir den Ladestatus gibt. Ich kenne mich mit Flash aber null aus.

                Nur mit reinem JS geht es definitiv nicht.

                Struppi.

      3. Hi,

        danke für deine tolle Hilfe.

        gern geschehen.

        Ich habe nicht gebeten über Sinn und unsinn von Flashs bzw. Vorladen von Flash, Wartezeiten etc. zu philosophieren.

        Doch, hast Du: Du hast in diesem Forum eine Frage gestellt.

        Was soll denn der Satz bitte:

        Deine Site ist also unbenutzbar, und dort, wo sie benutzt werden kann, ist sie nervig. Danke für die Warnung.

        Es handelt sich um einen Dank für die Warnung, dass Deine Site augenscheinlich einen Großteil der existierenden Netzgemeinschaft - mich eingeschlossen - mit Grausen erfüllen wird.

        Du weißt doch garnicht was ich machen will!

        Du willst die Darstellung von in Mengen vorhandenen Flash-Objekten zurück halten.

        Ich möchte eine Seite machen, in denen meine über 1000 Flash Animationen zu sehen sind. Und jedesmal möchte ich 5 davon anzeigen lassen.

        Ja. Übel.

        Der User, der auf meine Seite geht, weiß also, dass es sich um Flash Animationen handelt, nimmt also die Wartezeiten in Kauf!

        Soso, das tut er? Er wartet geduldig vor einem wie auch immer verschönerten Nichts, während er eigentlich schon hätte Inhalt betrachten können? Ich schätze mal, Du bist neu im Netz. Herzlich willkommen.

        Nun möchte ich aber einen Fortschrittsbalken anzeigen, um dem Benutzer eine ungefähre Vorstellung zu geben, wie lange er warten muß bis alle Flashs geladen sind!

        Warum? Er muss nicht warten.

        Also Cheatah, nicht vorschnell über etwas Urteilen, von dem man nichts genaues weiß!

        Ich wusste schon vorher genug, um mir ein Urteil zu erlauben.

        Hat jemand also eine Idee, wie ich mit Javascript diese Flash-Animationen (jeweils 5) vorladen kann bzw. wie ich dafür einen Fortschrittsbalken realisieren kann?

        Bitte lies die Antworten, die ich gebe. Ich habe nur wenig Lust, für die Mülltonne zu schreiben.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hallo Cheatah,

          Doch, hast Du: Du hast in diesem Forum eine Frage gestellt.

          Man sollte aber die Frage auch verstanden habne, anstatt wild loszulamentieren!

          Es handelt sich um einen Dank für die Warnung, dass Deine Site >>augenscheinlich einen Großteil der existierenden Netzgemeinschaft ->>mich eingeschlossen - mit Grausen erfüllen wird.

          Die Webseite is eine INTRANET Seite, die niemandem außer unseren Mitarbeitern zur Verfügung steht!!!
          (Soviel dazu dass Du immernoch nicht weißt, worum es geht, dir trotzdem anmaßt ein Urteil abzugeben)

          Ja. Übel.

          Du weißt halt immernoch nicht worum es geht!

          Soso, das tut er? Er wartet geduldig vor einem wie auch immer >>verschönerten Nichts, während er eigentlich schon hätte Inhalt >>betrachten können? Ich schätze mal, Du bist neu im Netz. Herzlich >>willkommen.

          Da es eine INTRANET Seite ist für die ein GigaBit Netzwerk zur Verfügung steht, sind selbst große Flashs in wenigen Sek, geladen, also der Ladevorgang würde ca. 5-10 sek. dauern, dafür würde ich gerne einen Fortschrittsbalken machen. Man sieht mal wieder Du weißt nicht worum es geht! Anstatt zu helfen nimmst Du irgendwas an und laberst darüber rum!

          Ich wusste schon vorher genug, um mir ein Urteil zu erlauben.

          Du wußtest eben nicht genug, siehe vorherige Antworten!

          1. Hallo,

            Man sollte aber die Frage auch verstanden habne, anstatt wild loszulamentieren!

            Cheatah weiß die Antwort schon, bevor der Fragende gefragt hat. Das Wissen und Erkennen ist vollendet. Es gibt daher keine Einzelfälle.

            Sei so lieb und suche dir ein Spezialistenforum. Hier wirst du nicht auf Kompetenz stoßen. Zu dem Thema ist das Signal-Rausch-Verhältnis bei 1 zu 95. Reine Erfahrung meinerseits, ohne dich wegschicken zu wollen. Das ist wohl leider der beste Rat, der ein Fragender zu dem Thema hier erhalten kann.

            Mathias

  2. Hallo Mr. Burns,

    Hintergrund ist, ich habe immer 5 große Flashs auf meiner Seite, und würde gerne einen Fortschrittsbalken erstellen, immer wenn ein Flash geladen wurde geht der Balken um ein Fünftel weiter!

    Da gibt es leider keine Möglichkeit.
    Du könntest zwar jeden Flashfilm in der Größe 1x1 Pixel skaliert laden lassen, aber du hast keine Möglichkeit, den Ladestatus eines Flashfilms abzufragen.

    Insofern kann ich dir nur empfehlen,
    Dieses Vorhaben aufzugeben.

    *reim*

    Grüße

    Marc Reichelt || http://www.marcreichelt.de/

    --
    Linux is like a wigwam - no windows, no gates and an Apache inside!
    Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
    http://emmanuel.dammerer.at/selfcode.html
    1. Hallo,

      Du könntest zwar jeden Flashfilm in der Größe 1x1 Pixel skaliert laden lassen, aber du hast keine Möglichkeit, den Ladestatus eines Flashfilms abzufragen.

      Warum nicht? Ich dachte, es gibt eine Flash-JavaScript-Schnittstelle?

      Mathias

      1. Warum nicht? Ich dachte, es gibt eine Flash-JavaScript-Schnittstelle?

        Wenn du Flash->JavaScript mittels "getURL" meinst, ja die gibt es.
        Damit kannst Du aber nur aus Flash heraus JavaScript-Funktionen aufrufen, du kannst mit JavaScript keine Sachen aus dem Flash lesen, es sei denn, Flash ist so gütig, es dir in einem javaScript-Aufruf mitzuteilen.

        Der umgekehrte Weg (JavaScript-Flash) via der FSCommand-Schnittstelle geht afik nur unter bestimmten Vorraussetzungen (MAcIE kanns z.B. glaub ich nicht) und wie der Fragende schon geschrieben hat - er kann die FlashDateien nicht verändern, was er für FSCommand-Unterstützung aber müßte.

        Gruß,
        Jörg

        1. Hallo,

          Wenn du Flash->JavaScript mittels "getURL" meinst, ja die gibt es.
          Damit kannst Du aber nur aus Flash heraus JavaScript-Funktionen aufrufen

          Na, das würde doch ausreichen, um eine Funktion etwa mit einem Parameter aufzurufen. Wenn die Funktion dann zum fünften Mal aufgerufen wurde mit allen nötigen Parametern, dann kann die Logik gestartet werden, die die »vorgeladenen« Flash-Objekte sichtbar macht.

          Mathias

          1. Hallo Mathias!

            Wenn du Flash->JavaScript mittels "getURL" meinst, ja die gibt es.
            Damit kannst Du aber nur aus Flash heraus JavaScript-Funktionen aufrufen
            Na, das würde doch ausreichen, um eine Funktion etwa mit einem Parameter aufzurufen. Wenn die Funktion dann zum fünften Mal aufgerufen wurde mit allen nötigen Parametern, dann kann die Logik gestartet werden, die die »vorgeladenen« Flash-Objekte sichtbar macht.

            Deine Überlegung ist schon richtig, nur müsste auch "getURL" aus dem Flash-Film heraus gesendet werden. In Flash stehen die Eigenschaften "_framesloaded" und "_totalframes" zur Verfügung mit denen das viel einfacher geht. Diese müssen aber mit ActionScript im Movieclip selbst eingebaut sein, was aber ebenso für "getURL" gilt.

            Der OP müsste also seine SWF-Dateien (die er nicht bearbeiten kann) nochmals in eigene Flashmovies einbinden, was kein Problem ist, aber voraussetzt, dass er die erforderlichen Daten für Flash verfügbar machen kann. Irgendwie verstehe ich aber den Grund für den ganzen Aufwand nicht, für Wartezeiten von weniger als drei Sekunden ist keine Fortschrittsanzeige erforderlich, da genügt doch das allfällige Einblenden eines Hinweises.

            Beste Grüsse
            Richard