Beste mensen,
ik heb de volgende functie geschreven (en getest in Firefox 1.0 en IE 6)
Nou loop ik tegen het volgende probleem aan:
De variabelen path en path_over worden telkens vervangen in de for-loop, waardoor alle plaatjes die ik hiermee een onmouseover en onmouseout functie geef de waarde gebruiken van het laatste element dat door de for-loop gaat.
Ik snap niet hoe dit kan en hoe ik dit kan verhelpen, kan iemand me misschien wijzen richting oplossing?
Hoop dat ik het een beetje duidelijk heb uitgelegd...
Alvast bedankt!
ik heb de volgende functie geschreven (en getest in Firefox 1.0 en IE 6)
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| // -------------------------------------- // loads menu rollover images in browser cache // -------------------------------------- function load_menuRollovers() { if (document.getElementById && document.getElementsByTagName) { var nav = document.getElementById( "nav" ); if (nav != null) { var imgPaths = new Array ; for (var i = 0; i < nav.childNodes.length; i++) { if (nav.childNodes[i].nodeName == "LI") { var anchor = nav.childNodes[i].getElementsByTagName( "a" ).item(0); var btn_image = anchor.getElementsByTagName( "img" ).item(0) ; var path = btn_image.getAttribute( "src" ); var path_over = path.replace(".jpg", "-over.jpg"); imgPaths[imgPaths.length+1] = path_over ; //alert( btn_image.getAttribute("src") ); btn_image.onmouseover = function() { this.setAttribute("src", path_over); return false; } btn_image.onmouseout = function() { this.setAttribute("src", path); return false; } } } if (imgPaths.length > 0) { preloadImages( imgPaths ); } } } } |
Nou loop ik tegen het volgende probleem aan:
De variabelen path en path_over worden telkens vervangen in de for-loop, waardoor alle plaatjes die ik hiermee een onmouseover en onmouseout functie geef de waarde gebruiken van het laatste element dat door de for-loop gaat.
Ik snap niet hoe dit kan en hoe ik dit kan verhelpen, kan iemand me misschien wijzen richting oplossing?
Hoop dat ik het een beetje duidelijk heb uitgelegd...
Alvast bedankt!