Tengo una función resizePreview()
que redimensionará una imagen en un cuadro de diálogo jQuery si la imagen es demasiado grande. Esta imagen puede ser cambiada por el usuario. Mi código es algo como esto:Evento de JavaScript para cuando se cambia el atributo 'src' de la imagen '
$('#imagePreview').attr('src', newImageSrc);
resizePreview();
resizePreview()
utiliza $('#imagePreview').width()
y .height()
para obtener las dimensiones y cambia el tamaño en consecuencia. El problema es que la nueva imagen no se carga cuando se llama al resizePreview()
, por lo que la imagen cambia de tamaño de acuerdo con sus dimensiones originales, no de acuerdo con las dimensiones de la imagen recién cargada.
Si puse una llamada alert()
entre las dos líneas de código, funciona (ya que la alerta le da al navegador suficiente tiempo para cargar la nueva imagen). Aparentemente debería usar un evento? ¿Hay un evento existente, o hay una forma en que puedo hacer uno, para cuando el src de la imagen haya cambiado (algo así como un evento onChange, pero para ese atributo) o para cuando la nueva imagen haya terminado de cargarse? Gracias por tu tiempo.
Lo tengo que trabajar, gracias! – CMB
Creo que este es el enlace correcto: http://api.jquery.com/load-event/ – mxro
Utilicé este código antes de $ (ventana) .load(); y $ (documento). listo(); y trabajado – ivahidmontazer