Browserweiche Audio Player
blumentopf
- browser
Hallo,
ich möchte ein Hörbeispiel in eine Seite einbinden. Damit es auf allen Browsern auch eingebunden wird, habe ich es mit einer Browserweiche für IE mit activX versucht:
<object id="player" data="media/xenon.mp3" autostart="false" width="200" height="100" style="position:absolute;left:5px; top:167px; display:none;vertical-align:left; margin-left:0px; margin-right:100px;" > Ihr Browser kann das Objekt leider nicht anzeigen!</object>
<!--[if IE]>
<object id="player" data="media/xenon.mp3" autostart="false" width="200" height="100" style="position:absolute;left:5px; top:167px; display:none;vertical-align:left; margin-left:0px; margin-right:100px;" classid= "CLSID:05589FA1-C356-11CE-BF01-00AA0055595A">
<param name= "filename" value= "media/xenon.mp3" >
<a href="media/xenon.mp3">Hier klicken</a></object>
<![endif]-->
scheint dem IE aber nicht zu helfen.
Lasse ich die if IE Klammer weg, funktioniert es auf IE, Firefox zeigt dann aber den Link statt dem Player an:
<object id="player" data="media/xenon.mp3" autostart="false" width="200" height="100"style="position:absolute;left:5px; top:167px; display:none;vertical-align:left; margin-left:0px; margin-right:100px;" classid= "CLSID:05589FA1-C356-11CE-BF01-00AA0055595A">
<param name= "filename" value= "media/xenon.mp3" >
<a href="media/xenon.mp3">Hier klicken</a>
</object>
Zu besichtigen ist das hier:
Version mit Browserweiche
Version mit Browserweiche@title=Version ohne Browserweiche]
Der Player sollte auf beiden Seiten nach dem Klick auf den 5. Balken von links erscheinen, mit dem hover Text "Hören".
Vielen Dank für die Hilfe und Grüße
Hab aus Versehen den Link für die Version ohne Browserweiche vergurkt.
Deshalb hier nochmals die Version ohne Browserweiche
Hi,
ich möchte ein Hörbeispiel in eine Seite einbinden.
Wissen wir - bitte bleib' in deinem bestehenden Thread, und unterlasse unerwünschte Doppelpostings.
MfG ChrisB
Wissen wir - bitte bleib' in deinem bestehenden Thread, und unterlasse unerwünschte Doppelpostings.
Entschuldigung, das war keine aufdringliche Absicht.
Als ich bei einen neuen Versuch mit Browserweiche nicht weiterkam, wollte ich das nicht über den Thread zum Thema Position-Problemen posten.
Vielleicht hätte ich von Anfang an zwei Threads aufmachen, oder beide Probleme in die Überschrift nehmen sollen.
Auf jeden Fall habe ich jetzt eine funktionierende Lösung, die ich hier auch bekanntgeben möchte: der alternative Inhalt für den IE muss vor dem anderen, gleich positionierten allgemeinen Inhalt stehen.
Also erst
<!--[if IE]>
<object id="IE" data="audio.mp3" classid= "CLSID:05589FA1-C356-11CE-BF01-00AA0055595A"><param name="filename" value="audio.mp3"><a href="audio.mp3">Hier klicken</a></object>
<![endif]-->
und dann
<object id="anderebrowser" data="audio.mp3">Ihr Browser kann das Objekt leider nicht anzeigen!</object>
Sonst zeigt IE schon das an, was er nicht kann, bevor er die if-Klammer gelesen hat.
Weiß nicht ob das theoretisch stimmt. Auf jeden Fall funktioniert es so.
@@blumentopf:
nuqneH
Also erst
<!--[if IE]>
Bis du sicher, dass du das für ALLE IE-Versionen (einschl 8er) brauchst?
<object id="IE" data="audio.mp3" classid= "CLSID:05589FA1-C356-11CE-BF01-00AA0055595A"><param name="filename" value="audio.mp3"><a href="audio.mp3">Hier klicken</a></object>
<![endif]-->
und dann
<object id="anderebrowser" data="audio.mp3">Ihr Browser kann das Objekt leider nicht anzeigen!</object>
Dann hast du in IEs zwei 'object'-Elemente. Wozu? Du solltest nur das funktionierende einbauen! In deinem anderen Thread* hatte ich dir ein Beispiel verlinkt, aus dem ersichtlich wird, wie das mit dem Else-Zweig bei Conditional Comments geht. Wenn du dir dies aufmerksam angesehen hättest, wäre deine erneute Frage beantwortet gewesen, bevor du sie gestellt hattest und dieser Thread wäre überflüssig gewesen.
Qapla'
* gutes Beispiel dafür, warum es sinnvoll ist, im alten Thread zu bleiben und keinen neuen zu eröffnen
Hallo, vielen Dank für die Hinweise
Bis du sicher, dass du das für ALLE IE-Versionen (einschl 8er) brauchst?
Ich habe derzeit nur die 8er, und bei der war das scheinbar nötig.
Dann hast du in IEs zwei 'object'-Elemente. Wozu? Du solltest nur das funktionierende einbauen!
Hieße das dann so?
<!--[if IE]>
<object classid= "CLSID:05589FA1-C356-11CE-BF01-00AA0055595A"><param name="filename" value="audio.mp3"></object>
<![endif]-->
In deinem anderen Thread* hatte ich dir ein Beispiel verlinkt, aus dem ersichtlich wird, wie das mit dem Else-Zweig bei Conditional Comments geht. Wenn du dir dies aufmerksam angesehen hättest, wäre deine erneute Frage beantwortet gewesen, bevor du sie gestellt hattest und dieser Thread wäre überflüssig gewesen.
hab das dort leider nicht alles verstanden.
* gutes Beispiel dafür, warum es sinnvoll ist, im alten Thread zu bleiben und keinen neuen zu eröffnen
hab ich ja schon als Fehler eingestanden.
Grüße
@@blumentopf:
nuqneH
hab das dort leider nicht alles verstanden.
Genauer, bitte! Was genau hast du an
<!--[if !(IE 6)]><!--><body><!--<![endif]-->
<!--[if IE 6]><body id="ie6"><![endif]-->
nicht verstanden? Worin besteht deine Schwierigkeit, dies an deine Bedürfnisse anzupassen?
Qapla'
@@blumentopf:
nuqneH
hab das dort leider nicht alles verstanden.
Genauer, bitte! Was genau hast du an
<!--[if !(IE 6)]><!--><body><!--<![endif]-->
<!--[if IE 6]><body id="ie6"><![endif]-->
>
> nicht verstanden? Worin besteht deine Schwierigkeit, dies an deine Bedürfnisse anzupassen?
>
> Qapla'
Nun, wenn man noch nie mit derartigen if declarationen zu tun hatte, wird einem in einem solchen Beispiel nicht gleich alles klar, zumal der verlinkte Beitrag erst mit einem Zitat einer zunächst verwirrenden und scheinbar nicht funktionierenden Code Zeile beginnt. Mittlerweile habe ich das aber verstanden. Als Einführung in die Browserweichentechnik ist das für jemanden, der noch gar nicht weiß, wonach er genau sucht, etwas schwierig, sich einzudenken.
Meine Schwierigkeit in der Umsetzung bestand dann aber darin, dass trotz der gestellten Weiche sich kein Erfolg einstellte. Das konnte ich dann dadurch lösen, dass ich die Weiche früher gestellt habe, also im Code nach oben verschoben habe.
Was ich aber an obigen Beispiel immer noch nicht verstehe, sind so einfache Dinge wie: was bedeutet dass Ausrufezeichen nach dem if und vor dem (IE6)?
Das wird sicher irgendwo erklärt, aber ich hab's halt nicht gefunden.
Was ich eigentlich meinte mit
> > hab das dort leider nicht alles verstanden.
war, das ich durch die Diskussion dieser speziellen Anwendung einer Browserweiche zwar den Text sehe, mit dem so eine Weiche gestellt wird, jedoch dadurch immer noch nicht weiß, was die Prinzipien der Verwendung dieser Technik sind, und wie man mit ihr am besten umgeht.
Grüße
'ǝɯɐu$ ıɥ
Was ich aber an obigen Beispiel immer noch nicht verstehe, sind so einfache Dinge wie: was bedeutet dass Ausrufezeichen nach dem if und vor dem (IE6)?
Das wird sicher irgendwo erklärt, aber ich hab's halt nicht gefunden.
Das ! negiert, also wenn nicht...
das andere ! ist teil des anfangs des html kommentares in dem die CCs eingeschlossen sind.
<!--- :anfang
ende: ---/>
Grüße
ssnɹƃ
ʍopɐɥs
Bounjoun blumentopf,
<!--[if !(IE 6)]><!--><body><!--<![endif]-->
<!--[if IE 6]><body id="ie6"><![endif]-->
Das sind sogenannte Conditional Comments (google mal danach).
> Nun, wenn man noch nie mit derartigen if declarationen zu tun hatte,
... brauchst Du Dich um (Zitat, dein Beitragstitel: Browserweichen) keine Gedanken zu machen - sorry.
> Als Einführung in die Browserweichentechnik ist das für jemanden, der noch gar nicht weiß, wonach er genau sucht, etwas schwierig, sich einzudenken.
Es ist auch keine Einführung, noch eine Browserweichentechnik an sich, sondern eine Microsoft-proprietäre Syntax um IE-Browser anzusprechen. Diese wurde entwickelt, nachdem MS erkannt hat, dass sie mit ihrem IE6 ziemlich schnell hinterher hinkten.
> Was ich aber an obigen Beispiel immer noch nicht verstehe, sind so einfache Dinge wie: was bedeutet dass Ausrufezeichen nach dem if und vor dem (IE6)?
Das ist angelegt an gängige Programmiersprachen-Syntax:
if(!etwas) bedeutet: »if not etwas«[1], oder: if »etwas« (zum Zeitpunkt der Abfrage) nicht existiert oder undefiniert ist.
[1] so lese ich das für mich zumindest
Adiou.