Avatar billede nicce Nybegynder
06. april 2001 - 23:22 Der er 5 kommentarer og
1 løsning

Random billeder?

hejsa, er det muligt at have en webside som indeholder fx. 5 små billeder 100px X 100px som skifter automatisk hvergang siden loades?
jeg ville gerne kunne have 100 små billeder i en mappe, og fra den mappe skulle der så hentes 5 tilfældige billeder ind i en tabel på siden, linksene på billeder skal ikke skifte kun de små billeder..kan det lade sig gøre, hvis det kan, vil det så være tungt? det skulle gerne kunne køre på en side med mange besøgende:-)

på forhånd tak!

Avatar billede milo Nybegynder
06. april 2001 - 23:32 #1
ved ik om man kan i javascript, men ved man fx kan i php...ønsker du et script til det?
Avatar billede jakoba Nybegynder
06. april 2001 - 23:43 #2
Den nemmeste måde at gøre det på er at give billederne nogle faste navne i den mappe. Når du skifter nye billeder ind omdøber du dem til de navne.

så kan du bruge følgende:

<script language=\'javascript\'> <!--

var pics = new Array( \"pic0.jpg\", \"pic1.jpg\", \"pic2.jpg\", \"pic3.jpg\", \"pic4.jpg\",
                      \"pic5.jpg\", \"pic6.jpg\", \"pic7.jpg\", \"pic8.jpg\", \"pic9.jpg\",
                      \"pic10.jpg\", \"pic11.jpg\", \"pic12.jpg\", \"pic13.jpg\", \"pic14.jpg\",
                      \"pic15.jpg\", \"pic16.jpg\", \"pic17.jpg\", \"pic18.jpg\", \"pic19.jpg\" );
//NB: ikke komma efter sidste billede.

var brugt = new Array ();

var i = j = k = 0;
do {
  j = Math.trunc(Math.random()*pics.length);
  for ( k=0; i>k && pics[j]!=brugt[k]; k++ ) ; // tom for-løkke
  if ( k==i ) brugt[i++] = pics[j];
} while ( 5>i );
              // array brugt indeholder nu 5 forskellige
              // og i er 5.

var path = \"mappestien/\"

// --> </script>

nede i body indsætter du så billederne med:

<script>
document.write( \"<img src=\'\" +mappestien +brugt[i--] +\"\' width=100 height=100>\" );
</script>

du må selv holde øje med at du ikke gør det mere end 5 gange. jeg har ikke sat en check ind.

mvh JakobA
Avatar billede nicce Nybegynder
06. april 2001 - 23:50 #3
Jakoba: mange tak det ser fornuftigt ud:), hvad mener du med at et jeg ikke gør det mere end 5 gange?
det gør ikke noget at det samme billede bliver brugt mere en 1 gang, vhis det er det du mener?
første load af webpage kunne være:

image1=pic1.jpg
image1=pic20.jpg
image1=pic13.jpg
image1=pic7.jpg
image1=pic3.jpg
anden load

image1=pic20.jpg
image1=pic16.jpg
image1=pic19.jpg
image1=pic2.jpg
image1=pic14.jpg

osv....





Milo: jeg ved intet om php, ville det være mindre krævende hvis det var lavet i php?
Avatar billede jakoba Nybegynder
07. april 2001 - 00:05 #4
så mange sider som du gider. det er helt fint.
men ikke mere end 5 billeder på hver side, der udtrækkes jo kun 5 forskellige :)

mvh JakobA
Avatar billede jakoba Nybegynder
07. april 2001 - 00:10 #5
Ups. fandet en fejl:
Det skal være  brugt[--i]  istedet for  brugt[i--]  ellers kommer def javascript fejl ved første billede.

document.write( \"<img src=\'\" +mappestien +brugt[--i] +\"\' width=100 height=100>\" );
Avatar billede nicce Nybegynder
07. april 2001 - 00:24 #6
mange tak for hjælpen:)
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