Lennart: document.write überschreit aktuelle Seite?

Hallo,

ich arbeite an einem kleinen Zufallsgenerator für die Schule. Klappt eigentlich alles auch, nur wundere ich mich grade ein wenig. Ich lade ein paar Bilder auf den Bildschirm mit document.write und dabei wird alles andere was auf der Seite war, ich sag mal überschrieben man sieht nurnoch die von JS ausgegebenen Bilder.

Vielleicht hilft euch ja der Code...

  
<script type="text/javascript">  
function spiel()  
{  
var zufall;  
array1 = new Array();  
for(var i = 0; i < 13; i++)  
{  
a = 1.5+12*(Math.random());  
a = Math.round(a);  
  
b = 1 + 3*(Math.random());  
b = Math.floor(b);  
zufall = a+"."+b;  
if(i == 0)  
{  
array1.push(zufall);  
}  
else  
{  
for (u = 0; u <= array1.length; u++)  
{  
if(array1[u] == zufall)  
{  
a = 1 + 12*(Math.random());  
a = Math.round(a);  
  
b = 1 + 3*(Math.random());  
b = Math.round(b);  
zufall = a+"."+b;  
u = 0;  
}  
}  
array1.push(zufall);  
}  
}  
var c = array1.join(".");  
var d = c.split(".");  
for(var i = 0; i < d.length; i++)  
{  
if(d[i*2] == 1)  
{  
array1.splice(i, 1, "ass."+d[1+i*2]);  
}  
else if(d[i*2] == 11)  
{  
array1.splice(i, 1, "bube."+d[1+i*2]);  
}  
else if(d[i*2] == 12)  
{  
array1.splice(i, 1, "dame."+d[1+i*2]);  
}  
else if(d[i*2] == 13)  
{  
array1.splice(i, 1, "könig."+d[1+i*2]);  
}  
}  
  
var e = array1.join(".");  
var f = e.split(".");  
for(var u = 0; u < f.length; u++)  
{  
if(f[1+u*2] == 1)  
{  
array1.splice(u, 1, f[u*2]+".herz");  
}  
else if(f[1+u*2] == 2)  
{  
array1.splice(u, 1, f[u*2]+".karo");  
}  
else if(f[1+u*2] == 3)  
{  
array1.splice(u, 1, f[u*2]+".kreuz");  
}  
else if(f[1+u*2] == 4)  
{  
array1.splice(u, 1, f[u*2]+".piek");  
}  
}  
  
  
  
var g = array1.join(".");  
var h = g.split(".");  
for(var p = 0; p < array1.length; p++)  
{  
document.write("<img src=\""+h[1+p*2]+"/"+h[1+p*2]+" "+h[p*2]+".png\" width=\"80\">");  
}  
}  
</script>  

aufrufen tu ich das mit:

  
<a href="" onClick="javascript:spiel();" >ZIEH!?</a>  

Ich denk mal das ihr mir helfen könnt ;). Danke schon mal...
Lennart

  1. Hi,

    ich arbeite an einem kleinen Zufallsgenerator für die Schule. Klappt eigentlich alles auch, nur wundere ich mich grade ein wenig. Ich lade ein paar Bilder auf den Bildschirm mit document.write und dabei wird alles andere was auf der Seite war, ich sag mal überschrieben

    document.write() fügt an die Stelle, bis zu der bisher gerendert wurde, etwas an. Wurde das Rendering schon beendet (befindet man sich also sozusagen hinter "</html>"), ist es nicht mehr möglich, etwas anzufügen. Die einzig sinnvolle Variante lautet, ein neues Dokument zu öffnen - und genau das geschieht.

    Ich denk mal das ihr mir helfen könnt ;).

    Verwende kein document.write(), sondern handelsübliche DOM-Methoden.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. @@Cheatah:

      nuqneH

      […] handelsübliche DOM-Methoden.

      Was kosten die?

      Qapla'

      --
      Bildung lässt sich nicht downloaden. (Günther Jauch)
      1. Mahlzeit Gunnar Bittersmann,

        »» […] handelsübliche DOM-Methoden.

        Was kosten die?

        Zwei Barren goldgepresstes Latinum ...

        Qapla'

        Dif-tor heh smusma!

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
      2. Hi,

        »» […] handelsübliche DOM-Methoden.
        Was kosten die?

        ein bis zwei Seelen, je nach Anbieter. Das Geheimnis ist, nicht die eigene zu nehmen.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
      3. Hi,

        »» […] handelsübliche DOM-Methoden.

        Was kosten die?

        wenn man nicht grade die allerbilligsten nimmt, SCHREIEN die auch nicht so rum (über die aktuelle Seite).