El problema es que no siempre queda bien ubicada, a veces de desfasa un poco. ¿Se les ocurre por qué puede ser? Copio el código a continuación.
Código:
Usando Event.observe(document, 'load', function(){}) no funciona en Firefox, sí en Opera (no probé en el resto por ahora). Con window, 'load' sí funciona en firefox, pero el problema de la mala ubicación persiste.Event.observe(document, 'load', function() { var pics = $$('.links'); for(i = 0; i < pics.length; i++) { var btn = document.createElement('img'); btn.src = 'ampliar.png'; //Attach to DOM if(pics[i].next()) pics[i].parentNode.insertBefore(btn, pics[i].next()) else pics[i].parentNode.appendChild(btn); Element.extend(btn) //Position icon btn.style.position = 'absolute'; var pos = btn.previous().down().cumulativeOffset(); var size = btn.previous().down().getDimensions(); btn.style.left = (pos.left + size.width - btn.width/2) + 'px'; btn.style.top = (pos.top + size.height - btn.height/2) + 'px'; //Attach action to icon btn.onclick = function() { showPhoto(this.previous()) } } })
Muchas gracias!