• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Div als Iframe

Status
Für weitere Antworten geschlossen.

VollDerNewb

Gesperrt
Hallo Community,

ich habe mal wieder ein Problem.
Ist es möglich ein Div als Iframe zu deklarieren?

Ich habe momentan 2 Divs in dem einen ist der Content und alles, in dem anderen ist ein Flashplayer.. Ich kann jetzt im Content auf verschiedene Links klicken dabei wird die komplette Seite neu geladen und der Flashplayer hört jedesmal auf zu spielen!
Mir wäre es lieber wenn nur der DIV Content neu geladen wird und nicht der DIV player.. Ich weiss, Iframe oder Frames würden mir dort helfen.. ist aber nicht möglich wegen verschiedenen Funktionen.
PHP:
echo '<div id="content" style="float:left">';
 
show_content($_GET['id']);
 
echo '
</div>
<div id="player" style="margin-left:50px;float:right">
<div id="flashcontent"></div>
<script type="text/javascript">
 // <![CDATA[
  var so = new SWFObject("mp3player/ep_player.swf", "ep_player", "269", "226", "9", "#FFFFFF");
  so.addVariable("skin", "mp3player/skins/nobius_platinum/skin.xml");
  so.addVariable("playlist", "mp3player/playlist.xml");
  so.addVariable("autoplay", "false");
  so.addVariable("shuffle", "false");
  so.addVariable("repeat", "false");
  so.addVariable("buffertime", "1");
 
  // this parameter activates the use of event callbacks
  // like MP3_PLAYING / MP3_PAUSED / MP3_STOPPED
  so.addVariable("notifyonevent", "true");
 
  so.addParam("allowscriptaccess", "always");
  so.write("flashcontent");
 // ]]>
</script>
</div>';
 
Ist es möglich ein Div als Iframe zu deklarieren?
Nein, natürlich nicht.
Ein <div> ist ein Strukturelement, das zum Gruppieren mehrerer Elemente zwecks gemeinsamer CSS-Formatierung verwendet wird.
Ein Frame ist eine Verhunzung von HTML, ist eigentlich gar kein Strukturelement und macht was völlig anderes.

Ich kann jetzt im Content auf verschiedene Links klicken dabei wird die komplette Seite neu geladen und der Flashplayer hört jedesmal auf zu spielen!
Dass jedesmal eine neue Seiter geladen wird, ist die normale Funktionsweise des WWW. Wenn Du irgendwas nonstop spielen lassen willst, lässt sich das nur mittels Frames lösen, die diesen normalen Weg des WWW umgehen und in einem Fenster mehrere, voneinander unabhängige Seiten darstellen.

Mir wäre es lieber wenn nur der DIV Content neu geladen wird
Dann wende Dich an die Entwickler von HTML, CSS & Co. oder verwende unbeliebte Techniken.
Apropos unbeliebt...Musik auf Webseiten ist per default eigentlich auch eher unerwünscht.

Gruß,
-Efchen
 
Ich wusste gar nicht dass die Webentwicklung so unflexibel ist.
Dann muss ich wohl Web 3.0 entwickeln!

Aber man kann doch mittels Javascript nen DIV ansprechen und neu beschreiben lassen. Jetzt muss ich nur noch herausfinden wie ich eine PHP-Funktion mit Javascript in das DIV schreiben lassen kann!
 
Entschuldige, aber Du solltest Dich erstmal ein wenig mit dem Web beschäftigen. Wie es funktioniert. Wo JavaScript zum Einsatz kommt, und wo PHP. Wie die Kommunikation zwischen Client und Server verläuft und alles halt.

Du redest von unflexibel, aber worauf basiert Deine Bewertung?

Wenn Du mit PHP einen Inhalt bereitstellst, kannst Du den gleich von PHP in HTML-Code darstellen lassen, wozu da noch JavaScript nötig sein soll, entzieht sich meiner Kenntnis.

Was Du theoretisch machen könntest, ist die Inhalte per Ajax vom Server anfordern. Aber dadurch ergeben sich halt wieder andere Probleme:
1. JavaScript muss aktiviert sein.
2. Die URL ändert sich nicht -> selbe Probleme wie bei Frames.

Dein Problem mit dem fortlaufenden Player gibts nur in dieser einen Konstellation und die einzige Lösung dafür sind Frames. Für normale Web-Anwendungen sind Frames gänzlich ungeeignet, aber in diesem Fall zwingend notwendig.
Im Prinzip kannst Du problemlos Frames verwenden, die Tatsache, dass Du den Besucher mit Musik volldudelst, ist schon für viele Nutzer ein Nachteil, da macht es den Braten auch nicht mehr fett, dass der Nachteil "Frames" auch noch hinzu kommt.

Du kannst genauso auch ein Popup aufmachen, in dem der Player läuft. Dann kann wenigstens der Rest ohne Frames laufen.

Ansonsten warte ich mit Spannung auf Dein Web 3.0!
 
Hmm, vielleicht zweifelst du gerade einwenig an meinem Wissen über das WWW und deren Sprachen.
Ich bin sehr gut im Informiert über Server/Client über PHP/Java/Ajax/Ruby etc. ich stand nur gerade ein wenig auf dem Schlauch was mein Problem betrifft. Es ist einfach keine keine elegante Lösung mit Frames zu arbeiten wenn man ein großes Musikportal aufmacht welches sich auf Barrierefreiheit beruft.

Trotz deiner Kritik an dem Player danke ich dir für deine Antworten.

P.S. Web 3.0 auf Basis von RubyOnRails ist schon in der Mache ;)
 
Hmm, vielleicht zweifelst du gerade einwenig an meinem Wissen über das WWW und deren Sprachen.
Das muss an Deinem Namen liegen :-)

Es ist einfach keine keine elegante Lösung mit Frames zu arbeiten wenn man ein großes Musikportal aufmacht welches sich auf Barrierefreiheit beruft.
Ja, das sehe würde ich auch so sehen.
Aber will man Musik laufen lassen, während man sich durch die Links klickt? Das ist jetzt etwas, was ich mir noch nicht so richtig vorstellen kann.

Aber ich sehe da sonst auch keine wirkliche Lösung, die mit dem Popup wäre noch die beste, ist aber auch nicht so doll mit Popup-Blockern und der Möglichkeit, im Browser einzustellen, dass keine Popups/neue Fenster geöffnet werden sollen bzw. alle Links immer im selben Fenster geladen werden sollen. Denn dann landet der Player im selben Fenster und die Hauptseite ist weg. Das kanns ja auch nicht sein.

Grüße,
-Efchen
 
Ja, aber dann kann er doch auch gleich Frames nehmen. Genaugenommen sind Frames dann sogar noch besser, weil man sich nur den Inhaltsframe anzeigen lassen und so bookmarken kann. Werden die Inhalte per AJAX ausgetauscht, kann man definitiv gar nicht mehr bookmarken.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben