Ik ben bezig een soort foto-gallery te maken, en ik gebruik daarbij javascript. Nu heb ik een functie geschreven (loadThumbs) die 6 images moet weergeven in een div. De functie krijgt als variabele de index mee van de eerste image die weergegeven moet worden. Ter verduidelijking:
Ik heb bijvoorbeeld 20 images, genummerd 1 t/m 20. Als ik de functie bijvoorbeeld de waarde 1 mee geef, moeten dus image 1 t/m 6 geladen worden.
Het rare is nu, de eerste keer dat ik de loadThumbs aanroep (vanuit een andere functie), gaat dit goed. Als ik echter de functie aanroep vanuit de html code (<a href="javascript:loadThumbs('1');">), dan worden in één keer álle afbeeldingen geladen (20 dus) in plaats van maar zes.
Ik heb geprobeerd dit te omzeilen door in de html code een dummie functie aan te roepen, die op zijn beurt weer loadThumbs aanroept, maar ook dit gaat fout.
Hieronder de code van de functie loadThumbs die de images moet laden, en de functie start die de eerste keer loadThumbs aanroept. De variable images geeft het totaal aantal afbeeldingen aan, bijvoorbeeld 20 dus.
Ik werk pas kort met javascript, en ik probeer nogal eens dingen te doen die wel kunnen in Java (waar ik wel ervaring mee heb), maar niet in javascript. Misschien dat het zoiets is? Of misschien zie ik een stomme fout over het hoofd?
Ik heb bijvoorbeeld 20 images, genummerd 1 t/m 20. Als ik de functie bijvoorbeeld de waarde 1 mee geef, moeten dus image 1 t/m 6 geladen worden.
Het rare is nu, de eerste keer dat ik de loadThumbs aanroep (vanuit een andere functie), gaat dit goed. Als ik echter de functie aanroep vanuit de html code (<a href="javascript:loadThumbs('1');">), dan worden in één keer álle afbeeldingen geladen (20 dus) in plaats van maar zes.
Ik heb geprobeerd dit te omzeilen door in de html code een dummie functie aan te roepen, die op zijn beurt weer loadThumbs aanroept, maar ook dit gaat fout.
Hieronder de code van de functie loadThumbs die de images moet laden, en de functie start die de eerste keer loadThumbs aanroept. De variable images geeft het totaal aantal afbeeldingen aan, bijvoorbeeld 20 dus.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| function loadThumbs(startIndex){
var text = "";
for(i=startIndex;(i<startIndex+6)&&(i<=images);i++){
text+="<a href=\"javascript:loadImage(\'"+i+"\')\">[img]\""+folder+i+"_thumb.jpg\"[/img]</a> ";
if((i-startIndex)%2==1){
text+="<br>";
}
}
document.getElementById('thumbnails').innerHTML = text;
}
function start(){
loadThumbs(1);
} |
Ik werk pas kort met javascript, en ik probeer nogal eens dingen te doen die wel kunnen in Java (waar ik wel ervaring mee heb), maar niet in javascript. Misschien dat het zoiets is? Of misschien zie ik een stomme fout over het hoofd?
public void ik()