Tengo imágenes que parecen <img ng-src="dynamically inserted url"/>
. Cuando se carga una sola imagen, necesito aplicar el método iScroll refresh () para que la imagen sea desplazable.
¿Cuál es la mejor manera de saber cuándo una imagen está completamente cargada para ejecutar alguna devolución de llamada?
javascript
html
angularjs
Sergei Basharov
fuente
fuente
Respuestas:
Aquí hay un ejemplo de cómo llamar a image onload http://jsfiddle.net/2CsfZ/2/
La idea básica es crear una directiva y agregarla como atributo a la etiqueta img.
JS:
HTML:
fuente
Modifiqué esto un poco para que
$scope
se puedan llamar a métodos personalizados :La directiva:
Espero que alguien lo encuentre MUY útil. Gracias @mikach
La
doThis()
función sería entonces un método $ scopefuente
@ Oleg Tikhonov: Acabo de actualizar el código anterior .. @ mikach Gracias ..)
fuente
Mi respuesta:
fuente
Acabo de actualizar el código anterior.
y directiva ...
fuente
Básicamente, esta es la solución que terminé usando.
$ apply () solo debe ser utilizado por fuentes externas en las circunstancias adecuadas.
en lugar de usar aplicar, lancé la actualización del alcance al final de la pila de llamadas. Funciona tan bien como "scope. $ Apply (attrs.imageonload) (true);".
fuente
$apply()
sólo debe ser utilizado por fuentes externas"? no estoy siguiendo.