Hola de nuevo
Luis10, veo que vamos avanzando hacia donde queríamos:
He podido comprobar que mientras IE guarda el valor de clip así:
rect(0px 0px 0px 0px)
Firefox lo almacena con comas:
rect(0px, 0px, 0px, 0px)
De modo que hay que hacer split por
"px" ó por
"px,", y tú sólo lo hiciste por
"px" simple.
Lo que he hecho es, simplemente, convertir las comas existentes en nada (osea, eliminar las comas si las hubiere):
Código PHP:
var vectorRecorte = objeto.clip.split("rect(")[1].split(")")[0].replace(/,/g, "").split("px");
Y he podido comprobar que funciona bien tanto en IE como en FF.
También he notado que si pulsamos
Abrir capa y mientras está animando pulsamos
Cerrar Capa, no se va a cerrar inmediatamente, va a esperar a que se abra. Se puede solucionar cómodamente agregando una variable global al sistema (la he llamado
animando), y llamando a los
setTimeout's que animan de esa manera. Antes de establecer un
animando comprobamos si ya se estaba ejecutando otro:
Tanto en
AnimarRecorte():
Código PHP:
if(animando) clearTimeout(animando);
animando = setTimeout ("AnimarRecorte()",50)
Como en
RestaurarImagen():
Código PHP:
if(animando) clearTimeout(animando);
animando = setTimeout ("RestaurarImagen()",30)
Y ya verás que va todo como la seda.
Un saludo.