code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| //in een functie tijdens het laden van de pagina
for (i=0;i<navRoot.childNodes.length;i++)
{
node = navRoot.childNodes[i];
if (node.nodeName == "IMG")
{
var d = 'pic' + i;
node.setAttribute('id', d);
node.onmouseover = function(){zoomIn(d);}
node.onmouseout = function(){zoomOut(d);}
}
}
//img vergroten
function zoomIn(p)
{
if(document.getElementById(p).height < HEIGHT_BIG)
{
document.getElementById(p).height++;
setTimeout("zoomIn('" + p + "')", 10);
}
} |
Situatie: een DIV met IMG elementen in zonder een ID.
Tijdens de load, wordt een IDs ("pic1" bv) toegekend aan de IMG elementen. Er wordt ook een mouseover event toegevoegd en daarin wordt het ID meegegeven.
Echter, bij een mouseover op bv. de eerste IMG met ID "pic0" is het argument p van zoomIn() steeds het laatst toegekende ID: "pic3" bv. als er 4 IMG elementen zijn...
Kan ik een argument meegeven bij het toevoegen van een onmouseover event? Blijkbaar wel, maar waarom wordt dan het laatste ID altijd meegegeven? Of zit er ergens een foutje in..
[ Voor 7% gewijzigd door ? ? op 02-04-2008 15:53 ]