R
random
New member
- Beiträge
- 1
- Punkte Reaktionen
- 0
Hallo das ist mein erster Beitrag. Ich hoffe auch eure Nachsicht. Und freu mich über jegliche Anregungen.
zum Problem:
Math.random greift auf die unter myads[...] abgelegten objekte,Seiten,etc. zu und zeigt daraus eines per random an.
Soweit so gut. Schön wär es, wenn bereits angezeigte Objekte ausgeklammert werden, so dass keines mehrfach ausgewählt wird.
Nehmen wir an es sind 10 Objekte. Vielleicht gibt es ein Befehl, der sagt:
1. Durchgang, wähle Zahl aus 1-10. Ergebnis: 3
2. Durchgang, wähle Zahl aus 1-10 [3]. Ergebnis: 7
3. Durchgang, wähle Zahl aus 1-10 [3,7] Ergebnis: 5
...
und so weiter, bis alle Zahlen einmal gewählt wurden und dann von vorn.
Bis jetzt muss ich für jedes neue Objekt eine neue Seite generieren, vielleicht gibt es da ja auch eine andere Lösungsmöglichkeit,
bin leider mit meinen Ideen erstmal am Ende.
Danke für eure Hilfe!
Hier der Quelltext:
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Fernseher</title>
<script type="text/javascript">
myAds = [
"page1.htm",
"page2.htm",
"page3.htm",
"page4.htm"
]
function randomAds(){
total=myAds.length-1 // range
numbersRange=new Array()
selectedNum=new Array()
for(var n=0;n<=total;n++){
numbersRange[n]=n
}
for(var p=0;p<3;p++){
rndnum=Math.floor(Math.random()*(total))
selectedNum[p]=numbersRange.splice(rndnum,1)
total--
}
for(var i=0;i<selectedNum.length;i++){
document.getElementById("if"+(i+1)).src=myAds[selectedNum]
}
}
</script>
</head>
<body onload="randomAds()" width="1280" height="1024">
<table width="1280" border="0">
<tr>
<td align="center" nowrap="nowrap" bgcolor="#FFFFFF">
<img src="pics/Maske.jpg" alt="Maske" width="1280" height="1024" style="position:absolute; left:0; top:0; z-index:0;"/>
<iframe name="if1" id="if1" width="1144" height="645" style="position:absolute; left:68px; top:58px; z-index:1;"></iframe>
</td>
</tr>
</table>
<a href="index.html"><img src="pics/skip.jpeg" alt="skip" height="61" style="position:absolute; left:55px; top:805px; z-index:1;"> </img></a>
</body>
</html>
zum Problem:
Math.random greift auf die unter myads[...] abgelegten objekte,Seiten,etc. zu und zeigt daraus eines per random an.
Soweit so gut. Schön wär es, wenn bereits angezeigte Objekte ausgeklammert werden, so dass keines mehrfach ausgewählt wird.
Nehmen wir an es sind 10 Objekte. Vielleicht gibt es ein Befehl, der sagt:
1. Durchgang, wähle Zahl aus 1-10. Ergebnis: 3
2. Durchgang, wähle Zahl aus 1-10 [3]. Ergebnis: 7
3. Durchgang, wähle Zahl aus 1-10 [3,7] Ergebnis: 5
...
und so weiter, bis alle Zahlen einmal gewählt wurden und dann von vorn.
Bis jetzt muss ich für jedes neue Objekt eine neue Seite generieren, vielleicht gibt es da ja auch eine andere Lösungsmöglichkeit,
bin leider mit meinen Ideen erstmal am Ende.
Danke für eure Hilfe!
Hier der Quelltext:
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Fernseher</title>
<script type="text/javascript">
myAds = [
"page1.htm",
"page2.htm",
"page3.htm",
"page4.htm"
]
function randomAds(){
total=myAds.length-1 // range
numbersRange=new Array()
selectedNum=new Array()
for(var n=0;n<=total;n++){
numbersRange[n]=n
}
for(var p=0;p<3;p++){
rndnum=Math.floor(Math.random()*(total))
selectedNum[p]=numbersRange.splice(rndnum,1)
total--
}
for(var i=0;i<selectedNum.length;i++){
document.getElementById("if"+(i+1)).src=myAds[selectedNum]
}
}
</script>
</head>
<body onload="randomAds()" width="1280" height="1024">
<table width="1280" border="0">
<tr>
<td align="center" nowrap="nowrap" bgcolor="#FFFFFF">
<img src="pics/Maske.jpg" alt="Maske" width="1280" height="1024" style="position:absolute; left:0; top:0; z-index:0;"/>
<iframe name="if1" id="if1" width="1144" height="645" style="position:absolute; left:68px; top:58px; z-index:1;"></iframe>
</td>
</tr>
</table>
<a href="index.html"><img src="pics/skip.jpeg" alt="skip" height="61" style="position:absolute; left:55px; top:805px; z-index:1;"> </img></a>
</body>
</html>