Avatar billede unsigned Nybegynder
05. januar 2003 - 18:20 Der er 10 kommentarer og
1 løsning

Vis tilfældig side

På en hjemmesider er der 115 sider. Der er på hver side en knap (et billede, der er et link), der hedder 'vis tilfældig side'. Når man trykker på knappen skal en af de 115 sider vises tilfældigt (random).

Af vedligeholdelse grunde må der ikke være kode på de 115 sider (der kommer flere). På de 115 sider skal være et link, der kalder siden med kode. Siden med kode, skal svare med at loade en af de 115 tilfældige sider.

For at gøre det så simpelt som muligt, skal der helst kun bruges HTML og JavaScript.

Kan det lade sig gøre? Hvis ja, hvordan?
Avatar billede Slettet bruger
05. januar 2003 - 18:23 #1
Ja, det kan sagtens lade sig gøre. Men først må du lige svare på, om siderne hedder noget logisk, fx side001.html, side002.html, osv.
Avatar billede unsigned Nybegynder
05. januar 2003 - 18:26 #2
-> phoenix Siderne hedder ikke noget logisk, som du siger. De hedder diverse klingende navne, som snemanden, tepotten, sankt_peter og hejsevaerket. Alle med .html .
Avatar billede Slettet bruger
05. januar 2003 - 18:31 #3
OK, så bliver det lidt sværere, men heller ikke meget! :)

Lav en side, der fx hedder "tilfaeldig.html" (and it goes a little somethin' like this):

<html>
<head>
<title>Loading...</title>
<script>
sider = new Array("snemanden", "tepotten", "sankt_peter", "hejsevaerket"); //Bare fyld mere på!

tilf = Math.floor(Math.random() * sider.length);
self.location.href = sider[tilf];
</script>
</head>
<body>
</body>
</html>

Det eneste, du nu behøver at gøre, er at linke til denne side, så vil den selv klare resten.
Avatar billede Slettet bruger
05. januar 2003 - 18:32 #4
Hov for søren:

self.location.href = sider[tilf] + ".html";

... skulle det have været!

Det er jo i øvrigt en lillebitte chance for, at brugeren skulle få smidt den samme side i hovedet, som han forlod. Jeg ved ikke, om du kan leve med det; ellers må jeg jo se, hvad jeg kan gøre! :)
Avatar billede unsigned Nybegynder
06. januar 2003 - 00:26 #5
-> phoenixv Det er flot kode du har lagt ud. Du løser problemet på tre kodelinier. :)
Avatar billede unsigned Nybegynder
06. januar 2003 - 00:27 #6
-> phoenixv Kom med et svar, så kan jeg give point.
Avatar billede unsigned Nybegynder
06. januar 2003 - 01:33 #7
-> phoenixv Hvis det ikke er for meget, så vil jeg gerne se koden, så brugeren ikke ser den side, som vedkommende lige har forladt.
Avatar billede Slettet bruger
06. januar 2003 - 15:01 #8
OK, men det virker kun i IE. I andre browsere vil det fungere som før:

<script>
sider = new Array("snemanden", "tepotten", "sankt_peter", "hejsevaerket"); //Bare fyld mere på!

tilf = Math.floor(Math.random() * sider.length);
if (self.location.replace)
self.location.replace(sider[tilf]);
else
self.location.href = sider[tilf];
</script>
Avatar billede unsigned Nybegynder
07. januar 2003 - 22:38 #9
- phoenixv Skal der ikke være nogen + ".html"; flere steder i programstumpen?
Avatar billede Slettet bruger
08. januar 2003 - 15:38 #10
Jo:

<script>
sider = new Array("snemanden", "tepotten", "sankt_peter", "hejsevaerket"); //Bare fyld mere på!

tilf = Math.floor(Math.random() * sider.length);
if (self.location.replace)
self.location.replace(sider[tilf] + ".html");
else
self.location.href = sider[tilf] + ".html";
</script>
Avatar billede unsigned Nybegynder
08. januar 2003 - 19:11 #11
-phoenixv Tak for hjælpen. Jeg vil bruge den sidste kode du kom med.
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