Avatar billede g-stilo Nybegynder
08. april 2004 - 13:09 Der er 14 kommentarer og
1 løsning

hjælp til tilfældig billedskift x4 på samme side?

Jeg har brug for et script der kan skifte billeder tilfældigt i 4 rammer på samme (hjemme)side men jeg er ikke for skarp til selv at skrive koden i javascript. (ihvetfald ikke så det virker)

Søger lidt hjælp :)
Avatar billede roenving Novice
08. april 2004 - 13:29 #1
Hvor mange billeder, må der være ens ?-)
Avatar billede roenving Novice
08. april 2004 - 14:56 #2
-- eller er det 4 forskellige billedrækker ?-)
Avatar billede g-stilo Nybegynder
08. april 2004 - 15:55 #3
Det er 4 forskellige billedrækker med 4 forskellige emner. 5-8 forskellige billeder skal "shuffle" i hver ramme med interval på 5-10 sekunder så det ikke er for forstyrrene (for øjnene) på siden hvor der også vil være en del tekst at læse. Det er meningen at billederne skal skifte uafhængigt i forhold til hinanden så ikke alle 4 billedrækker skifter samtidig.

Måske skal jeg bare lave et seperat script for hver af billedrækkerne¿ - det kan vel saktens køre på en side...
Avatar billede roenving Novice
08. april 2004 - 16:03 #4
-- og så det sidste spørgsmål umiddelbart, så skal der nok komme noget kode:

Betyder det noget, hvis nogle billeder nogen gange bliver gentaget lidt tiere end andre, eller er det vigtigt, at alle billeder i et emne bliver vist ?-)
Avatar billede roenving Novice
08. april 2004 - 16:24 #5
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Skift billeder i 4 emner</title>
<meta name="keywords" content="søgeord adskilt af komma">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
<script language="javascript" type="text/javascript">
var imgs = ['pic1','pic2','pic3','pic4'];

var pics = new Array()
//Emne1
pics[0] = new Array();
pics[0][0] = "Emne1Pic1.jpg";
pics[0][1] = "Emne1Pic2.jpg";
pics[0][2] = "Emne1Pic3.jpg";
pics[0][3] = "Emne1Pic4.jpg";
pics[0][4] = "Emne1Pic5.jpg";
pics[0][5] = "Emne1Pic6.jpg";
pics[0][6] = "Emne1Pic7.jpg";
pics[0][7] = "Emne1Pic8.jpg";
//Emne2
pics[1] = new Array();
pics[1][0] = "Emne2Pic1.jpg";
pics[1][1] = "Emne2Pic2.jpg";
pics[1][2] = "Emne2Pic3.jpg";
pics[1][3] = "Emne2Pic4.jpg";
//Emne3
pics[2] = new Array();
pics[2][0] = "Emne3Pic1.jpg";
pics[2][1] = "Emne3Pic2.jpg";
pics[2][2] = "Emne3Pic3.jpg";
pics[2][3] = "Emne3Pic4.jpg";
pics[2][4] = "Emne3Pic5.jpg";
pics[2][5] = "Emne3Pic6.jpg";
//Emne4
pics[3] = new Array();
pics[3][0] = "Emne4Pic1.jpg";
pics[3][1] = "Emne4Pic2.jpg";
pics[3][2] = "Emne4Pic3.jpg";
pics[3][3] = "Emne4Pic4.jpg";
pics[3][4] = "Emne4Pic5.jpg";
pics[3][5] = "Emne4Pic6.jpg";

function skiftBilleder(){
  for(i=0;imgs.length>i;i++){
    num = Math.floor(Math.random()*pics[i].length);
    document.images[imgs[i]].src = pics[i][num];
    document.images[imgs[i]].alt = pics[i][num];
  }
}
</script>
</head>
<body onresize onload="skiftBilleder();setInterval('skiftBilleder()',1000)"><!-- 10 sekunder -->
Emne 1 : <img src="" name="pic1"><br>
Emne 2 : <img src="" name="pic2"><br>
Emne 3 : <img src="" name="pic3"><br>
Emne 4 : <img src="" name="pic4"><br>
</body>

</html>
Avatar billede g-stilo Nybegynder
08. april 2004 - 16:47 #6
Det må jeg sige, det er stærkt gået... jeg har først mulighed for at teste i weekenden, men jeg forestiller mig at det virker når du har postet det :D

Tak for det, vil du ikke have nogle points? (kommentar)
Avatar billede roenving Novice
08. april 2004 - 16:55 #7
Jo, jo, men jeg har ikke travlt, og jeg synes du skal se og prøve det, specielt fordi jeg bare har valgt den simple løsning her, og det betyder, at man nogen gange kan få fornemmelsen af, at billederne ikke skifter mellem alle ...

Selvfølgelig fordi der 'bare' tages et tilfældigt billede hver gang den kommer forbi ...

-- og så så jeg lige, at min test-indstilling på eet sekund, var blevet kopieret ind, så der skal stå 10000 og ikke 1000 !-)
Avatar billede g-stilo Nybegynder
08. april 2004 - 17:12 #8
Super, jeg kikker på det. Jeg har en lidt hæktisk påske så jeg kan ikke lige sige hvornår det blir.
Avatar billede g-stilo Nybegynder
14. april 2004 - 20:51 #9
Jeg har rodet lidt med det og det fungerer fint... næste skridt er at få dem til at skifte med tilfældigt tidsinterval. Så der går fra 3-8 sek mellem billederne, så vil de vel skifte mere tilfældigt så det ikke ser helt synkront un når alle fire billeder skifter samtidig. Hvad siger du til den :)
Avatar billede roenving Novice
14. april 2004 - 20:59 #10
Ja, ja, jeg kender godt det der, at man får nye ideer til noget, når man er hvordan det virker, når man starter implementeringen !-)

-- ögonblick !o]
Avatar billede roenving Novice
14. april 2004 - 21:08 #11
Bare skift dette:

function skiftBilleder(nr){
  if(skiftBilleder.arguments.length==0){
    for(i=0;imgs.length>i;i++){
      num = Math.floor(Math.random()*pics[i].length);
      document.images[imgs[i]].src = pics[i][num];
      document.images[imgs[i]].alt = pics[i][num];
      setTimeout('skiftBilleder('+i+')',3000+Math.floor(Math.random()*5000));
    }
  }else{
    num = Math.floor(Math.random()*pics[nr].length);
    document.images[imgs[nr]].src = pics[nr][num];
    document.images[imgs[nr]].alt = pics[nr][num];
    setTimeout('skiftBilleder('+nr+')',3000+Math.floor(Math.random()*5000));
  }
}
</script>
</head>
<body onresize onload="skiftBilleder();">
Avatar billede g-stilo Nybegynder
14. april 2004 - 21:55 #12
Det er bare fedt :D tak for at du er så hurtig til at trylle
Avatar billede roenving Novice
14. april 2004 - 21:58 #13
Velbekomme '-)
Avatar billede roenving Novice
14. april 2004 - 22:08 #14
-- og tak for points ;~}
Avatar billede g-stilo Nybegynder
14. april 2004 - 22:26 #15
Det er alle poitsne værd. Det havde taget mig 1½ måned at finde ud af det selv. Det går ikke så godt når jeg selv scripter fra bunden, der skal i de fleste tilfælde lidt cut'n'paste fra nettet til ;)
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