document.write überschreit aktuelle Seite?
Lennart
- javascript
0 Cheatah
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
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
@@Cheatah:
nuqneH
[…] handelsübliche DOM-Methoden.
Was kosten die?
Qapla'
Mahlzeit Gunnar Bittersmann,
»» […] handelsübliche DOM-Methoden.
Was kosten die?
Zwei Barren goldgepresstes Latinum ...
Qapla'
Dif-tor heh smusma!
MfG,
EKKi
Hi,
»» […] handelsübliche DOM-Methoden.
Was kosten die?
ein bis zwei Seelen, je nach Anbieter. Das Geheimnis ist, nicht die eigene zu nehmen.
Cheatah
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).