El título se explica por sí mismo, pero proporcionaré una vista paso a paso sobre el asunto. Espero no ser el primero en haber notado este error (aparentemente) en Webkit/Chrome.Forma correcta de restablecer una animación GIF con visualización: ninguna en Chrome
Quiero reiniciar una animación GIF. Todos los ejemplos que he visto hasta ahora simplemente configuran el src
de la imagen o lo configuran en una cadena vacía seguido por el src
original nuevamente.
Echa un vistazo a este JSFiddle de referencia. El GIF se restablece perfectamente en IE, Firefox y Chrome. El problema que tengo es cuando la imagen tiene display:none
en Google Chrome solamente.
Verificar esto JSFiddle. El GIF se restablece bien en IE y Firefox antes de mostrarse en la página, ¡pero Chrome simplemente se niega a restablecer su animación!
Lo que he probado hasta ahora:
- Ajuste del
src
a sí misma como en el violín, no funciona en Chrome. - Establecer el
src
en una cadena vacía y restablecerlo al valor predeterminado, tampoco funciona. - Poner una envoltura alrededor de la imagen, vaciar el contenedor a través de
.html('')
y volver a poner la imagen en su interior, tampoco funciona. - Cambiando el
display
de la imagen a través de.show()
o.fadeIn()
justo antes de configurar elsrc
tampoco funciona.
El única solución la que he encontrado hasta ahora es mantener la imagen con su defecto display
y manipular a través de .animate()
ing ing y .css()
la opacidad, la altura y la visibilidad cuando sea necesario para simular un comportamiento display:none
.
La razón principal (contexto) de esta pregunta es que quería restablecer un GIF de cargador ajax justo antes de desvanecerlo en la página.
Así que mi pregunta es, ¿existe una forma adecuada de restablecer la animación de una imagen GIF (que evita el "error" de Chrome display:none
) o es realmente un error?
(ps. Es posible cambiar el GIF de los violines para una animación GIF más apropiado/tiempo para la prueba)
me funcionó una solución completa. Vea aquí: http://stackoverflow.com/a/31093916/1520422 –