Kasper Leth Jensen wrote in dk.edb.internet.webdesign.clientside:
> [...]Christian Heyn wrote:
>
> > På min side skal 20 billeder rotere i en uendelig lykke således
> > at et billede udskiftes med et nyt hvert 3. sekund. så længe
> > siden er åben.
> > Jeg har lagt de 20 billeder i et array. pic[0] = img00.jpg;
> > pic[1] = img02.pic; ...
>
> > Jeg syntes at jeg har prøvet med alle mulige kombinationer af
> > setTimeout. Det nærmeste jeg er kommet en løsning er en uendelig
> > while-løkke. men billedskiftet standser efter 1 skift, og det
> > sidste billede i serien vises.
>
> While() vil udføre dte hele og så vise resultatet alt for hurtigt til at
> du kan se hvad der sker, derfor ser det ud til at den springer direkte
> til sidste billede.
>
> > Har nogle et forslag til en løsning på min krise?
>
> Ja, prøv noget i stil:
>
> interval = 2000; // Millisekunder mellem billede-skiftene
> id = 0;
> pic = Array();
> pic[0] = 'img00.jpg';
> pic[1] = 'img02.pic';
> [resten af billederne]
>
> function changePic (id) {
> document.getElementById('mit_billede').src = pic[id]
> if ( id == pic.length) {
> id = 0;
> } else {
> id++;
> }
> setTimeout('changePic (' + id + ')', interval);
> }
> changePic(id);
>
>
>
> Har ikke afprøvet funktionen, men det er ca. så'n det bør gøres
Hej Kasper
Det lykkedes. Vidste ikke uendelige rekursive funktioner er tilladt.
Måtte ændre til:
function changePic (id) {
id++;
document.getElementById('mit_billede').src = pic[id];
if ( id == pic.length) {
id = 0;
}
setTimeout('changePic (' + id + ')', interval);
}
Men det er jo småting - Tak for tipet.
God sommer fra Christian
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials