Player (swf-Datei) in html ohne frames einbinden

Status
Nicht offen für weitere Antworten.

lisara

Grünschnabel
Hallo Zusammen,

trotz stundenlangem Suchen in Google, diesem und anderen Foren und vielen unterschiedlichen Ideen und Anregungen habe ich noch immer keine Lösung für das folgende Problem gefunden:

Ein in Flash gebauter Player soll in eine Html-Seite, die hauptsächlich mit Divs und entsprechendem CSS aufgebaut ist, eingebaut werden.
[Beispiel zu sehen unter: Http://www.westwert.de/Pascal]

Beim Laden der Seite startet der 1. Song automatisch. Der User hat die Möglichkeit, die Musik zu stoppen oder durch Anklicken entsprechender Buttons weitere Songs zu hören. Der Player sitzt fest plaziert im oberen Bereich jeder einzelnen Seite über der Navigation. Und genau das ist natürlich das Problem, denn beim Navigieren lädt sich ja jede Seite neu und der Player startet von vorne ...

Wie erreiche ich es nun, dass der Player beim Durchforsten der gesamten Page nicht jedes Mal von vorne startet und immer im Vordergrund - an der gleichen Stelle - steht? Als einzige Lösung habe ich bisher nur die Frame-Variante gefunden, die ich aber unbedingt umgehen möchte. Hat jemand eine andere Idee?

Danke für jede Unterstützung und viele Grüße aus Aachen, Lisara

PS: Ich arbeite übrigens weiter daran, den Besitzer der Page davon zu überzeugen, den Player nicht automatisch starten zu lassen, sondern den User doch selbst entscheiden zu lassen, ob er Musik hören möchte oder nicht, leider bisher ohne Erfolg. [... ich persönlich bezeichne so etwas ja gerne als "Hausfriedensbruch" ...]
 
Hi,

ruckelfrei wirst Du das ohne Frameset nicht hinbekommen.

Du könntest mit etwas Aufwand beim Seitenwechsel die aktuelle Songposition abfragen (z.B. mit JavaScript bei onunload eine Variable vom Flashfilm holen, die dort andauernd mit der Song-Position synchronisiert wird) und an die URL anhängen. Auf dem Server kannst Du diesen Wert aus $_GET holen und dem Flashfilm wieder per FlashVars übergeben. Er startet dann an der letzten Position. Wenn Du kein serverseitiges Script verwenden kannst, kannst Du den Wert auch mit JavaScript aus der URL ziehen und per document.write in die Object- und Embed-Tags schreiben.

Ist allerdings eine recht umständliche Lösung, die neben Flash auch noch JavaScript benötigt.

Du könntest auch die gesamte Seite in einen Frame (oder iframe) packen, der das gesamte Fenster ausfüllt, und den Flashplayer in zwei Dateien aufsplitten:

Eine unsichtbare, die nur den Song abspielt und in einem unsichtbaren Frame (oder dem body bei der iframe-Variante) sitzt. Dazu eine weitere, die die Kontrollen (Play, Stop usw.) enthält, und den eigentlichen Player via LocalConnection steuert. Der Player dudelt dann ohne Pause im Hintergrund, bleibt aber steuerbar.

Gruß

P.S. @Gumbo: Was hat das mit dem Problem zu tun - oder habe ich dort irgendetwas überlesen?
.
 
Zuletzt bearbeitet:
Danke Gumbo,

habe den Artikel gelesen, sehe aber nicht die Lösung meines Problems. Auch wenn ich irgendeine dort vorgeschlagene Variante des "Einbettens" nutze, lädt doch der Player trotzdem auf jeder Seite von vorne bzw. - wenn nicht in eine bestimmte Seite eingebaut, verdeckt diese die Sicht auf den Player ... oder habe ich den Artikel nicht verstanden ?

Gruß, lisara
 
Erst mal vielen Dank Datic für Deine Vorschläge!
Hört sich aber wirklich kompliziert an. Ich muß mir das Ganze noch mal in Ruhe antun ... so spontan würde ich dann aber doch ein 0815-Frameset vorziehen, da wird der Arbeitsaufwand wohl ähnlich sein. Meine Traumlösung wäre eher ein Layer, der - fixiert an einer bestimmten Position - immer im Vordergrund bleibt und trotzdem jede weitere Navigation des Users möglich macht. Gibt es dann wohl nicht, schade!

Viele Grüße, lisara
 
Hi,

also so ganz 100% Standards-kompatibel wird das so nicht gehen. Und zwar aus einem einfachen Grund: jede aufgerufene html-Seite ist per Definition unabhängig von der vorherigen Seite. Du kannst also nicht so ohne Weiteres den aktuellen Status einer Seite mitnehmen auf die nächste Seite.

Die einzige Möglichkeit, solche Informationen von einer Seite zur nächsten mitzunehmen, sind Cookies. Oder, wenn der Server dynamische Seiten unterstützt, dann kannst Du die Statusinformation auch in der Ziel-URL verpacken, dann ist der Server dafür zuständig, die Dateien korrekt aufzubereiten. Im Fall von Cookies macht das der Client.

Die Einbettung geht standardkonform nur mit object.
 
Status
Nicht offen für weitere Antworten.
Zurück