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

Musik abspielen, wenn auf IMG geklickt wird

Bubba

Neues Mitglied
Moin

Ihr seid meine letzte Hoffnung. Ich habe schon seit einiger Zeit das komplette www gegoogelt, aber leider keine Lösung für mein Problem gefunden (oder vielleicht war ich auch zu doof, die Lösung zu erkennen/ zu verstehen).

Ich habe leider nur begrenzte html Kenntnisse aber für meine Homepage Qigong in Jever reicht es.

Ich möchte, wenn man oben rechts das Logo anklickt eine mp3 Datei abgespielt wird, man aber auf der Seite bleibt und die Musik im Hintergrund läuft. Beim erneuten anklicken soll die Musik dann beendet werden.

Ich habe bis jetzt nur geschaft, daß eine neue leere Seite geladen wird, wo dann der Player zu sehen ist und die Musik spielt.
<a href="Qigong Musik.wav"><img src="Logo.gif">

Wie kann ich verhindern, daß eine neue Seite und ein Player angezeigt wird?

Vielen Dank schon mal für Eure Zeit und Mühe!

Bubba
 
Werbung:
Hallo Bubba und willkommen im Forum!
Lies dir mal diese Seite durch:
Musik W3C-konform in Webseiten einbinden
Den dort beschriebenen EMFF kannst Du benutzen, um deine Hintergrundmusik abzuspielen.
Im img-Tag des Logos folgendes notieren:
Code:
onclick='playmusic();'
Ein leeres div anlegen mit einer ID, z. B. id="playerdiv".
Folgendes Javascript im Head einfügen:
Code:
<script type="text/javascript">
function playmusic()
{
  cod  = '<object type="application/x-shockwave-flash" data="emff_standard.swf" width="110" height="34">';
  cod += '<param name="movie" value="emff_standard.swf">';
  cod += '<param name="FlashVars" value="src=example.mp3">';
  cod += '</object>';
  ob = document.getElementById ('playerdiv');
  ob.innerHTML = cod;
}
</script>
Viel Erfolg und viele Grüße - Ulrich
 
Hallo Ulrich

Vielen Dank für die schnelle Antwort.

Aber ich glaube, daß ist nicht die Lösung, die ich suche.

ch möchte nicht, daß ein Player angezeigt wird. Die Start/ Stop Taste soll einfach mein Logo.gif sein. Nach dem Anklicken vom Logo soll die Musik spielen oder stoppen, aber es soll sich sonst nichts an der Seite ändern. Es soll dann mit Hintergrundmusik möglich sein, in aller Ruhe meine Seite zu durchstöbern.
 
Werbung:
Ich möchte nicht, daß ein Player angezeigt wird
Das lässt sich machen: Gib dem div die Höhe und die Breite 0, dann ist der Player unsichtbar:
HTML:
style="width: 0px; height: 0px; overflow: hidden;"
Ich sehe gerade, bei dem Player kann man auch Höhe und Breite angeben.
Und für das Stoppen kann man eine Kontrollvariable einführen:
Code:
<script type="text/javascript">
var musicon = false;
function playmusic()
{
  cod  = '<object type="application/x-shockwave-flash" data="emff_standard.swf" width="110" height="34">';
  cod += '<param name="movie" value="emff_standard.swf">';
  cod += '<param name="FlashVars" value="src=example.mp3">';
  cod += '</object>';
  ob = document.getElementById ('playerdiv');
  if (!musicon)
  {
     musicon = true;
     ob.innerHTML = cod;
  }
  else
  {
    musicon = false;
    ob.innerHTML = "";
  }
}
</script>
 
Zuletzt bearbeitet von einem Moderator:
@Sempervivum

Danke für Deine Mühe :), aber für mich sind das alles böhmische Dörfer. Ich habe es einfach mal ausprobiert und eine neue Test HP angelegt, aber irgendwie funktioniert es nicht. Vielleicht hast Du Lust und kannst mal nach einem Fehler schauen.
Der Song ist als "Qigong Musik.mp3", das Bild als "Logo.gif" im selben Ordner wie die "emff_old.swf" und die u.a. index.htm abgelegt.

<!Doctype html>

<head>
<script type="text/javascript">
function playmusic()
{
<object type="application/x-shockwave-flash" data="emff_standard.swf" width="110" height="34">
<param name="movie" value="emff_old.swf">
<param name="FlashVars" value="src=Qigong Musik.mp3&amp;volume=50">
</object>
ob = document.getElementById ('playerdiv');
ob.innerHTML = cod;
}
</script>
</head>
<body>
<div id="playerdiv">
<img src="Logo.gif" onclick='playmusic();'>

</body>

Gruß Bubba
 
Bei Dateinamen im Internet keine Leerzeichen verwenden, diese durch Unterstrich ersetzen.
Außerdem musst Du den Code für das Einbetten des Players der Variablen cod zuweisen:
Code:
[b]cod = '[/b]<object type="application/x-shockwave-flash" data="emff_standard.swf" width="110" height="34">[b]';[/b]
[b]cod += '[/b]<param name="movie" value="emff_old.swf">[b]';[/b]
[b]cod += '[/b]<param name="FlashVars" value="src=Qigong Musik.mp3&amp;volume=50">[b]';[/b]
[b]cod += '[/b]</object>[b]';[/b]
Ich hätte mir deine Testseite gern angesehen, aber Du hast den Link nicht gepostet.
 
Werbung:
Ich habe die Änderungen vor genommen, ohne Erfolg :-(

Die Testseite ist nicht online, daher habe ich keinen Link gepostet. Nur die richtige Seite ist online, Link s.o.

<!Doctype html>

<head>
<script type="text/javascript">
function playmusic()
{
cod = '<object type="application/x-shockwave-flash" data="emff_standard.swf" width="110" height="34">';
Cod += '<param name="movie" value="emff_old.swf">';
Cod += '<param name="FlashVars" value="src=QigongMusik.mp3&amp;volume=50">';
Cod += '</object>';
ob = document.getElementById ('playerdiv');
ob.innerHTML = cod;
}
</script>
</head>
<body>
<div id="playerdiv">
<img src="Logo.gif" onclick='playmusic();'>

</body>
 
Ich hab's mal zum Laufen gebracht.
- Player unsichtbar
- Beim ersten Klick startet die Musik, beim zweiten stoppt sie

Du hattest folgende Fehler gemacht:
- Javascript unterscheidet zwischen Groß- und Kleinschreibung. Du hattest cod einmal klein und mehrmals groß geschrieben
- Beim Player muss Autostart gesetzt werden, andernfalls muss man erst den Play-Button drücken - schlecht möglich, wenn der Player unsichtbar ist.
- div-Tag war nicht geschlossen, daher verschwand das Logo, wenn man drauf drückte.

Hier ist der funktionierende Code:
Code:
<html>

<head>
<script type="text/javascript">
var musicon = false;
function playmusic()
{
  cod = '<object type="application/x-shockwave-flash" data="emff_standard.swf" width="0" height="0">';
  cod += '<param name="movie" value="emff_standard.swf">';
  cod += '<param name="FlashVars" value="src=QigongMusik.mp3&amp;volume=50&amp;autostart=yes">';
  cod += '</object>';
  ob = document.getElementById ('playerdiv');
  if (musicon)
  {
    ob.innerHTML = "";
    musicon = false;
  }
  else
  {
    ob.innerHTML = cod;
    musicon = true;
  }
}
</script>
</head>
<body>
<div id="playerdiv"></div>
<img src="Logo.gif" onclick='playmusic();'>

</body>
Bleibt noch dein Wunsch, dass die Musik weiter spielen soll, wenn man auf der Site navigiert. Das ist wahrscheinlich nur möglich, wenn Du den Player in einen Frame legst, der immer geladen bleibt. (Ja, ich weiß, dass Frames verrufen sind!) Ein Popunder wäre keine gute Lösung, weil es vom Popup-Blocker, wenn vorhanden, geblockt würde.
 
Cool... vielen, vielen Dank ;Jump

Allerdings rutscht das Logo beim Einschalten der Mucke nach unten und beim Ausschalten nach oben ?!?

Ich werde jetzt die Funktion erst mal in meine Homepage einbinden, mal sehen, was dann passiert.

Gruß Bubba
 
Werbung:
Ich habe es jetzt eingebaut, läuft wie ´n Länderspiel :-)
Jetzt muß ich "nur" noch rausfinden, wie man, während die Mucke spielt, weiter auf der Seite surfen kann.

Also, von Frames habe ich leider auch Null Ahnung ...
 
Zuletzt bearbeitet:
Über Frames kannst Du dich bei SelfHTML informieren:
SELFHTML: HTML / Frames
Sie sind heute im Webdesign verpönt, aber in deinem Fall sehe ich keine andere Lösung.
Auf meiner Chinaseite habe ich es auch so gemacht:
Guangzhou / China
In dem linken Frame läuft die Musik, während im rechten navigiert werden kann.
Viel Erfolg und viele Grüße - Ulrich
 
Werbung:
Hallo

Eine Frage habe ich noch. Ich möchte, daß der Song immer wieder neu gespielt wird. Ich dachte das geht mit dem Befehl "loop=yes".

cod += '<param name="FlashVars" value="src=QigongMusik.mp3&amp;volume=15&amp;autostart=yes;loop=yes">';

Dann wird aber der Song gar nicht mehr abgespielt...

Wo liegt der Fehler?

Viele Grüße Bubba
 
Laut Code-Generator muss es repeat=yes heißen. Und das &amp nicht vergessen. Am besten den Code-Generator benutzen.
 
@Sempervivum

Vielen herzlichen Dank für Deine Hilfe. Jetzt habe ich meine HP wie ich es gerne möchte :-) Daß die Musik beim Navigieren ausgeht, ist halb so wild. Eigentlich nervt Musik, wenn man in Ruhe eine Seite anschauen möchte. Ich wollte die Musik auch nur für mich haben. So kann ich immer beim Üben die Musik hören, wenn ich Internetzugang habe - Ziel erreicht.

Gruß Bubba
 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben