Ik wil een soort automatische slideshow creeeren. Ik heb daarvoor een aantal afbeeldingen gemaakt, die over elkaar gelayered moeten worden. Al die afbeeldingen zijn opgeslaan in de vorm "naam_nummer.png".
Nu wil ik met een javascript al die bestanden doorlopen, maar dan moeten de vorige layers wel gewoon op het scherm blijven. Dit heb ik opgelost met een simpele z-index.
Uiteindelijk heb ik dit opgelost met een loop, zie mijn code.
Alleen verschijnen alle afbeeldingen dan in 1 keer op het scherm. Ik wil graag een soort pause functie inbouwen, voordat de iteratie van de loop telkens begint. Daardoor krijg je een soort automatische dia te zien, en niet alles in 1 keer.
Nu heb ik gekeken naar deze site. Het lukt me niet om setTimeout binnen de for loop werkend te krijgen. Nu dacht ik dat ik een goede pause functie had gevonden, maar deze functie zorgt ervoor dat ik een script warning krijg, en dat werkt dus ook niet.
Ik snap het niet meer. Kan iemand mij helpen met het inbouwen van een pauze binnen mijn loop? Bedankt!
Nu wil ik met een javascript al die bestanden doorlopen, maar dan moeten de vorige layers wel gewoon op het scherm blijven. Dit heb ik opgelost met een simpele z-index.
Uiteindelijk heb ik dit opgelost met een loop, zie mijn code.
code:
1
2
3
4
5
| var j = 1;
for (var i = 8; i > 0; i--) {
document.write("<div style=\"position:absolute; top:100px; left:50%; z-index:"+ i +";\">[img]\"name_"+[/img]</div>");
j++;
} |
Alleen verschijnen alle afbeeldingen dan in 1 keer op het scherm. Ik wil graag een soort pause functie inbouwen, voordat de iteratie van de loop telkens begint. Daardoor krijg je een soort automatische dia te zien, en niet alles in 1 keer.
Nu heb ik gekeken naar deze site. Het lukt me niet om setTimeout binnen de for loop werkend te krijgen. Nu dacht ik dat ik een goede pause functie had gevonden, maar deze functie zorgt ervoor dat ik een script warning krijg, en dat werkt dus ook niet.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| /*
* This function will not return until (at least)
* the specified number of milliseconds have passed.
* It does a busy-wait loop.
*/
function pause(numberMillis) {
var now = new Date();
var exitTime = now.getTime() + numberMillis;
while (true) {
now = new Date();
if (now.getTime() > exitTime)
return;
}
} |
Ik snap het niet meer. Kan iemand mij helpen met het inbouwen van een pauze binnen mijn loop? Bedankt!
[ Voor 4% gewijzigd door Verwijderd op 18-10-2005 23:09 ]