Michael: Musicbox ?????

Hi Leute !!!

Ich habe folgendes Problem :

Auf meiner Page habe ich eine Menübox eingerichtet, in der man sich Musikstücke aussuchen kann. Das Problem ist, wenn man nun ein Stück anklickt wird es geladen und als MIDI abgespielt. Ich würde aber gerne daß das angeklickte Stück als Backsound läuft. Kann mir einr helfen und mir sagen was Ich ändern muß.
Folgender maßen habe ich die Menübox gestaltet :

<script language="JavaScript">
<!--
function Go(x)
{
if(x == "nichts")
{
document.forms[0].reset();
document.forms[0].elements[0].blur();
return;
}
else
{
top.location.href = x;
document.forms[0].reset();
document.forms[0].elements[0].blur();
}
}
//-->
</script>

<form>
<select size=1 name="Auswahl" onChange=
"Go(this.form.Auswahl.options[this.form.Auswahl.options.selectedIndex].value)"
style="width:110px; background-color:#FFFFFF;
font-size:9pt; font-family:Arial;">
<option value="nichts">Music-Box
<option value="hello.mid">Hello
<option value="cher_believe.mid">Cher_Believe
<option value="cocojambo.mid">Cocojambo
<option value="gildo.mid">Gildo
<option value="gildo.mid">Maenner
<option value="letitbe.mid">Letitbe
</select></form>

  1. Hi,

    Auf meiner Page habe ich eine Menübox eingerichtet, in der man sich Musikstücke aussuchen kann. Das Problem ist, wenn man nun ein Stück anklickt wird es geladen und als MIDI abgespielt. Ich würde aber gerne daß das angeklickte Stück als Backsound läuft. Kann mir einr helfen und mir sagen was Ich ändern muß.

    wenn ich das richtig sehe ist Dein Problem, daß sich das gewählte MIDI in einem eigenen kleinen Fenster öffnet. Dies kannst Du nur umgehen, indem Du es mit embed in ein HTML-Dokument einbettest. Lade also statt location.href = x eine Seite, der Du das MIDI-File als Parameter übergibst (location.href = 'playmidi.htm?' + x). Die Seite liest dann mit location.search den Parameter aus und schreibt mit JavaScript den passenden embed-Befehl. Am geeignetsten lädst Du das ganze in einen neuen Frame.

    Cheatah

    1. Hi,

      Auf meiner Page habe ich eine Menübox eingerichtet, in der man sich Musikstücke aussuchen kann. Das Problem ist, wenn man nun ein Stück anklickt wird es geladen und als MIDI abgespielt. Ich würde aber gerne daß das angeklickte Stück als Backsound läuft. Kann mir einr helfen und mir sagen was Ich ändern muß.

      wenn ich das richtig sehe ist Dein Problem, daß sich das gewählte MIDI in einem eigenen kleinen Fenster öffnet. Dies kannst Du nur umgehen, indem Du es mit embed in ein HTML-Dokument einbettest. Lade also statt location.href = x eine Seite, der Du das MIDI-File als Parameter übergibst (location.href = 'playmidi.htm?' + x). Die Seite liest dann mit location.search den Parameter aus und schreibt mit JavaScript den passenden embed-Befehl. Am geeignetsten lädst Du das ganze in einen neuen Frame.

      Cheatah

      Besten Dank für die Antwort, aber gibt es keine andere möglichkeit ??. Ich habe meine Menübox bereits in mein linken Frame eingebunden und es sollte kein neuer Frame entstehen.

      Michael

      1. Hi,

        Besten Dank für die Antwort, aber gibt es keine andere möglichkeit ??. Ich habe meine Menübox bereits in mein linken Frame eingebunden und es sollte kein neuer Frame entstehen.

        tja, ich habe noch nie versucht, ein embed mit JavaScript anzusprechen. Du könntest aber mal versuchen, das MIDI mit <embed name=myMIDI> in Deinen Frame einzubauen und dann mit document.myMIDI.src ein neues MIDI zu laden. Nur 'ne Theorie, keine Erfolgsgarantie!

        Jedenfalls stehen die Chancen ohne embed extrem schlecht, ich würde sogar sagen gleich null.

        Cheatah

        1. tja, ich habe noch nie versucht, ein embed mit JavaScript anzusprechen. Du könntest aber mal versuchen, das MIDI mit <embed name=myMIDI> in Deinen Frame einzubauen und dann mit document.myMIDI.src ein neues MIDI zu laden. Nur 'ne Theorie, keine Erfolgsgarantie!

          Jedenfalls stehen die Chancen ohne embed extrem schlecht, ich würde sogar sagen gleich null.

          Cheatah

          zumindest für den IE gibt es eine Lösung, probiere es mal über insertAdjacentHTML

          <../../tecbba.htm>

          A.H.

          1. tja, ich habe noch nie versucht, ein embed mit JavaScript anzusprechen. Du könntest aber mal versuchen, das MIDI mit <embed name=myMIDI> in Deinen Frame einzubauen und dann mit document.myMIDI.src ein neues MIDI zu laden. Nur 'ne Theorie, keine Erfolgsgarantie!

            Jedenfalls stehen die Chancen ohne embed extrem schlecht, ich würde sogar sagen gleich null.

            Cheatah

            zumindest für den IE gibt es eine Lösung, probiere es mal über insertAdjacentHTML

            <../../tecbba.htm>

            A.H.

            Hallo Antje danke für deinen Tip !!
            Leider kann Ich damit nicht viel Anfangen, da ich noch nicht so gut in Java bin.
            Aber vielleicht kannst du mir ja sagen was ich genau an meinem Sript ändern muß ????

            Schon mal jetzt besten Dank !!!

            <script language="JavaScript">
            <!--
            function Go(x)
            {
            if(x == "nichts")
            {
            document.forms[0].reset();
            document.forms[0].elements[0].blur();
            return;
            }
            else
            {
            top.location.href = x;
            document.forms[0].reset();
            document.forms[0].elements[0].blur();
            }
            }
            //-->
            </script>

            <form>
            <select size=1 name="Auswahl" onChange=
            "Go(this.form.Auswahl.options[this.form.Auswahl.options.selectedIndex].value)"
            style="width:110px; background-color:#FFFFFF;
            font-size:9pt; font-family:Arial;">
            <option value="nichts">Music-Box
            <option value="hello.mid">Hello
            <option value="cher_believe.mid">Cher_Believe
            <option value="cocojambo.mid">Cocojambo
            <option value="gildo.mid">Gildo
            <option value="gildo.mid">Maenner
            <option value="letitbe.mid">Letitbe
            </select></form>

            1. Hallo Antje danke für deinen Tip !!
              Leider kann Ich damit nicht viel Anfangen, da ich noch nicht so gut in Java bin.
              Aber vielleicht kannst du mir ja sagen was ich genau an meinem Sript ändern muß ????

              Hallo Michael,

              das geht leider nicht so schnell, ich schaue mir es in Ruhe an und melde mich per Mail. Dauert aber 2 bis 3 Tage.

              A.H.

              1. Hallo Antje danke für deinen Tip !!
                Leider kann Ich damit nicht viel Anfangen, da ich noch nicht so gut in Java bin.
                Aber vielleicht kannst du mir ja sagen was ich genau an meinem Sript ändern muß ????

                Hallo Michael,

                das geht leider nicht so schnell, ich schaue mir es in Ruhe an und melde mich per Mail. Dauert aber 2 bis 3 Tage.

                A.H.

                Hi Antje,

                Im vorraus schonmal besten Dank für deinen Einsatz.

                Michael

          2. Hi!

            zumindest für den IE gibt es eine Lösung, probiere es mal über insertAdjacentHTML

            Wenn ich das richtig verstanden habe, wird damit ein HTML-Code *eingefügt*, d.h. wenn drei Lieder ausgewählt würden, wären dann auch drei MIDI-PlugIns sichtbar.

            Sinnvoller ist es da meiner Meinung nach, mit <div id="MIDI"></div> einen Platzhalter zu schaffen, und dann per document.all.MIDI.innerHTML = "<embed "+midifile+" ...>" das Midi-Objekt zu ersetzen.
            btw: Ich würde das PlugIn sichtbar lassen ("visible=true"), dann kann man das Gedudel auch mal pausieren...

            Ciao,
            Mirko