Antje Hofmann: Sound-File per Mausklick

Beitrag lesen

Hi,

Hallo Casper bei der bereits genannten Lösung (von Cheatah) fragt mich mein browser, ob er die Datei öffnen oder speichern soll.

MSIE?

Aus diesem Grunde noch eine weitere Möglichkeit:
[snip]
<BGSOUND id=soundpoint src="" VOLUME=-10000>

<bgsound> funktioniert nur und ausschließlich mit dem MSIE.

Bisher war ich eigentlich der Meinung, daß ein location.href=soundfile ausreicht, scheint ja ein Irrtum zu sein. Deswegen bin ich an einer Lösung natürlich auch interessiert :-)

Versucht es mal damit:

<script language="JavaScript">
<!--
var ins;
ins=0;

function n4(y)  
{
if (document.layers==null)
{ if (ins==1) {document.all.ist2.outerText =" ";ins=0;}

Musik=("<p id='ist2'><embed src="+y +" autostart='true' width='145' height='25'></p>");  
document.all.ist.insertAdjacentHTML("AfterBegin",Musik);ins=1;}  

else {Musik=("<embed src="+y +" autostart='true' width='145' height='60'>");
document.ist.document.open();  
document.ist.document.write(Musik);
document.ist.document.close();}
}

//-->
</script>

Damit es läuft, benötigt ihr irgendwo in der Datei einen Div-Tag.
z.B.

<div id="ist" style="position:absolute;left:140;top:10"></div>

Die Funktion wird dann so aufgerufen:

<a href="datei.htm" onMouseOver="n4 ('song.mid')">Link</a>

Damit ihr wißt, was in der Funktion passiert:
Der Song wird an die Funktion übergeben. Dann kontrolliert sie IE oder Navi. Ist es der IE wird überprüft, wurde die Funktion schon mal aufgerufen oder nicht (Variable ins). Wenn ja, wird erst einmal der Player gelöscht. Anschließend bzw. bei nein, wird innerhalb vom definierten Div einfach die erforderliche Zeile geschrieben und der Player gestartet.
Beim Navi nutzt man die Eigenschaft, daß er den Inhalt eines positionierten Divs als eigenständiges Dokument ansieht und schreibt eben den Inhalt hinein.

Na dann viel Spaß

Antje