Avatar billede skwat Praktikant
20. marts 2001 - 16:36 Der er 22 kommentarer og
3 løsninger

document.write duer ikke

Jeg har før stillet dette spørgsmål, uden egentlig help.
Så nu giver jeg 150 point til den der kan løse det for mig.

Jeg vil lave en JukeBox på min side, har gjort som koden her.

<script language=\"javascript\">
function midibox(liste) {
    midfil = liste.options[liste.selectedIndex].value
    if (navigator.appName==\"Netscape\") {
    document.write(\"<embed src=\'\" + midfil + \"\' autostart=true hidden=true volume=100 width=44 height=28 loop=false></embed>\") }
    if (navigator.appName==\"Microsoft Internet Explorer\") {
    document.write(\"<bgsound src=\'\"+midfil+\"\'>\") } }
</script>

Problemmet er at document.write danner en ny side, det skal den ikke men derimod \"Reloade\".

Håber at det var uddybende nok
Avatar billede nute Nybegynder
20. marts 2001 - 16:45 #1
du må sette:

document.open();

før din document.write, og:

document.close();

etter din document.write()

/nute
Avatar billede nute Nybegynder
20. marts 2001 - 16:47 #2
men jeg kan egentlig ikke helt se at dette skal kunne fungere uten at du legger dette i layers....( kanskje jeg tar feil...?? )

/nute
Avatar billede skwat Praktikant
20. marts 2001 - 16:47 #3
Det kan jeg ikke lige se kan du uddybe
Avatar billede nute Nybegynder
20. marts 2001 - 16:49 #4
for at du skal kunne skrive til et dokument (fx. html side) i NS, så skal du \"åpne\" dokumentet:

function skriv(txt){
  document.open();
  document.write( txt );
  document.close();
}

( NB! KUN i NS )

/nute
Avatar billede skwat Praktikant
20. marts 2001 - 16:52 #5
Jeg tror at du misforstår mig.

scriptet skal ikke skrive til et dokument men afspille den lyd der bliver sat i variablen midfil. som den virker nu bliver filen godt nok afspillet men siden forsvinder.
Avatar billede skwat Praktikant
20. marts 2001 - 16:55 #6
du kan slå et smut forbi www.skwat.adsl.dk for at se hvad jeg mener
Avatar billede nute Nybegynder
20. marts 2001 - 17:01 #7
prøv å legg en

return false;

som siste linje i ditt script...
Avatar billede skwat Praktikant
20. marts 2001 - 17:04 #8
naaah virker ikke
Avatar billede nute Nybegynder
20. marts 2001 - 17:07 #9
document.write fungerer ikke i IE...

jeg tror nok du skal løse ditt problem ved å benytte layers...

/nute
Avatar billede dudal Nybegynder
20. marts 2001 - 17:24 #10
Prøv at lege lidt videre med dette, det virker lidt her og lidt der. :-)

<script language=\"javascript\">
function objBrowser(){
    this.Ie4=(document.all&&!document.getElementById)?1:0;
    this.Ie5=(document.getElementById)?1:0;
    this.Ns4=(document.layers)?1:0;
    this.Ns6=(document.getElementById&&!document.all)?1:0;
    this.DOM=(document.getElementById)?1:0;
}

var objBrowser = new objBrowser();

function midibox(liste) {
    midfil = liste
    if (objBrowser.Ns4 || objBrowser.Ns6 ) {
       
    document.layers[\'player\'].document.open();
    document.layers[\'player\'].document.write(\"<embed src=\'\" + midfil + \"\' autostart=true hidden=true volume=100 width=44 height=28 loop=false></embed>\")
    document.layers[\'player\'].document.close();   
    }
    if (objBrowser.Ie5 || objBrowser.Ie4 ) {
  document.all[\'player\'].innerHTML = \"<embed src=\'\" + midfil + \"\' autostart=true hidden=true volume=100 width=44 height=28 loop=false></embed>\"
   
       
    }
  }
</script>

<div id=\"player\" style=\"position:absolute; top: 0px; left: 0px;\"></div>

<form>
<select name=\"menu\" onChange=\"midibox(this.options[this.selectedIndex].value);\">
  <option value=/>Startside
  <option value=passport.mid>Midi fil
  <option value=carpmail.wav>Wave fil
</select>
</form>
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 17:33 #11
tsk tsk Dudal.

Jeg var så tæt på at være færdig med en løsning der ligner din fuldstændigt

if (navigator.appName==\"Microsoft Internet Explorer\") {
    document.all[\'dynfield\'].innerHTML =\'<bgsound src=\'\"+midfil+\"\'>\';}
    return false; }

}

og

<SELECT onChange=\"changeStuff(this.options[this.selectedIndex].value);\">

Og så kommer du bare der og fyrer det samme af. Er du klar over hvor mange grå hår jeg var ved at få....

Nørj hvor er jeg langsom til javaScript - Det må og kan kun gå fremad... hø hø..

/Nikolaj
Avatar billede nute Nybegynder
20. marts 2001 - 17:34 #12
:)

hilsen dudal
Avatar billede skwat Praktikant
20. marts 2001 - 21:02 #13
Jeg kan stadig ikke få en skid til at virke i min fustration sætter jeg lidt flere point på højkant
Avatar billede skwat Praktikant
20. marts 2001 - 21:12 #14
Den form jeg vælger musik på ser således ud:
<form name=midi>
        <select name=\"select\">
          <option selected>Ingen musik </option>
          <option value=\"sounds\\alien.mid\">Alien </option>
          <option value=\"sounds\\ben.mid\">Ben </option>
          <option value=\"sounds\\big.mid\">Big </option>
          <option value=\"Sounds\\fur_elise.mid\">F&uuml;r Elise</option>
        </select>
        <input type=\"button\" value=\"Afspil\" onClick=\"midibox(this.form.elements[0])\" name=\"button\">
      </form>

Jeg har også lige startet min Webserver hvos der er nogen der gerne vil se den
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 21:23 #15
Jeg vil tro at \"Select\" er et reserveret ord.
Prøv at ændre name=\"select\" til noget andet i din form.

Anyway virker Dudal´s fint hos mig og den er temmelig meget lig den jeg selv var i gang med.
Avatar billede skwat Praktikant
20. marts 2001 - 21:25 #16
kan du eamile eksembelet til mig...
Jeg er ved at tro  at det er mig der ikke Fatter en skid
Avatar billede skwat Praktikant
20. marts 2001 - 21:25 #17
Morten@masterit.dk
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 21:29 #18
Er sendt.
Avatar billede skwat Praktikant
20. marts 2001 - 21:39 #19
en sidste detalie kan man ikke få controllen til at være usynlig
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 21:42 #20
Jo da. Det var kun for testens skyld. Sæt hidden=\"true\" i Embed koden.

Læg mærke til at jeg kørte lidt videre på Dudal´s script.
Avatar billede skwat Praktikant
20. marts 2001 - 21:48 #21
Dooooooooooohhhhhe
øjjjh hvor Dumt, mange tak for hjælpenmit liv er blevet meget bedre nu
Avatar billede skwat Praktikant
20. marts 2001 - 21:49 #22
ups det var en lidt skæv fordelling
hpåber ikke at i bliver for sure :)
Avatar billede jakoba Nybegynder
20. marts 2001 - 23:15 #23
Hey. Må vi se det færdige script?
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 23:33 #24
Yup to sekunder - skal lige finde det igen.
Avatar billede nikolajdu Nybegynder
20. marts 2001 - 23:45 #25
<html>
<head>

<title>
</title>

<script language=\"javascript\">
function objBrowser(){
    this.Ie4=(document.all&&!document.getElementById)?1:0;
    this.Ie5=(document.getElementById)?1:0;
    this.Ns4=(document.layers)?1:0;
    this.Ns6=(document.getElementById&&!document.all)?1:0;
    this.DOM=(document.getElementById)?1:0;
}

var objBrowser = new objBrowser();

function midibox(liste) {
    midfil = liste
    if (objBrowser.Ns4 || objBrowser.Ns6 ) {
       
    document.layers[\'player\'].document.open();
    document.layers[\'player\'].document.write(\"<embed src=\'\" + midfil + \"\' autostart=true hidden=true volume=100 width=14 height=14 loop=false></embed>\")
    document.layers[\'player\'].document.close();   
    }
    if (objBrowser.Ie5 || objBrowser.Ie4 ) {
  document.all[\'player\'].innerHTML = \"<embed src=\'\" + midfil + \"\' autostart=true hidden=true volume=100 width=14 height=14 loop=false></embed>\"
   
       
    }
  }
</script>

</head>
<body>




<form>
<select name=\"menu\" onChange=\"midibox(this.options[this.selectedIndex].value);\">
  <option value=/>Startside
  <option value=annalotte.mp3>Midi fil
  <option value=arabmusic.wav>Wave fil
</select>
</form>

<div id=\"player\" style=\"position:absolute; top: 100px; left: 200px;\"></div>

</body>
</html>

Anyway ville et nok være federe at implementer Mediaplayer Direkte fremfor at \"bare\" at embedde den på siden.

Jeg begyndte lidt at eksperimentere med koden her.

<OBJECT ID=\"wmp\" WIDTH=1 HEIGHT=1 classid=\"CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95\"
    CODEBASE=\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701\";;
    standby=\"Loading Microsoft Windows Media Player components...\" type=\"application/x-oleobject\">
    <PARAM NAME=\"FileName\" VALUE=\"minLyd.wav\">
    <PARAM NAME=\"ShowControls\" VALUE=\"0\">
    <PARAM NAME=\"ShowDisplay\" VALUE=\"0\">
    <PARAM NAME=\"ShowStatusBar\" VALUE=\"1\">
    <PARAM NAME=\"AutoSize\" VALUE=\"1\">
    <PARAM NAME=\"AutoStart\" VALUE=\"1\">
        <EMBED TYPE=\"video/x-ms-asf-plugin\"
            PLUGINSPAGE=\"http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/\";;;
            SRC=\"minLyd.wav\";
            name=\"wmp\" SHOWCONTROLS=1 SHOWDISPLAY=1 SHOWSTATUSBAR=1 autosize=1
            autostart=1 width=192 height=144 displaybackcolor=black>
        </EMBED>
</object>

Nu får man pludseligt helt andre muligheder for at \"lege\" med Mediaplayer og dets CallBacks.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester