Beste tweakers,
ik ben tegen een probleem aangelopen bij een scriptje voor een soort van banner slider. Wat ik wil berijken is dat een aantal linkjes in een div de zelfde code bij een onclick uitvoeren maar met een andere waarde. Ik heb onderstaande code gepost als voorbeeld code. Het probleem is dat als je een loop maakt en x gebruikt in de onclick functie x als reverentie wordt gebruikt en niet als vaste waarde en dus alle links de laatste waarde gebruiken indien je op een linkje klikt. Ik heb al verschillende dingen geprobeert zoals een string er van te maken en een nieuwe variabele binnen de loop te maken maar dit helpt allemaal niet. De onclick functies blijven de laatste waarde meenemen dus lijkt of ze altijd als reverentie worden gebruikt, wat ik ook doe. Heeft iemand nog een andere suggestie?
Voorbeeld:
ik ben tegen een probleem aangelopen bij een scriptje voor een soort van banner slider. Wat ik wil berijken is dat een aantal linkjes in een div de zelfde code bij een onclick uitvoeren maar met een andere waarde. Ik heb onderstaande code gepost als voorbeeld code. Het probleem is dat als je een loop maakt en x gebruikt in de onclick functie x als reverentie wordt gebruikt en niet als vaste waarde en dus alle links de laatste waarde gebruiken indien je op een linkje klikt. Ik heb al verschillende dingen geprobeert zoals een string er van te maken en een nieuwe variabele binnen de loop te maken maar dit helpt allemaal niet. De onclick functies blijven de laatste waarde meenemen dus lijkt of ze altijd als reverentie worden gebruikt, wat ik ook doe. Heeft iemand nog een andere suggestie?
Voorbeeld:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| // voorbeeld class function someClass(id) { // voorbeeld methode function init(placeholder_id) { // element var oElem = document.getElementById(placeholder_id); // array van alle linkjes var aLinks = oElem.getElementsByTagName('A'); for (var x = 0; x < aLinks.length; x++) { aLink[x].onclick = function () { // en hier gaat het fout doeIetsAnders[x]; } } } this.init(id) } function doeIetsAnders(nummer) { alert(nummer); } |