offscreen lazy img images example demand jquery google-chrome image

jquery - lazy - La configuración del atributo src de la imagen no funciona en Chrome



lazy loading offscreen images (7)

Quiero obtener el src de una imagen y configurarlo como src de otra cuando se presione #btn :

jQuery("#btn").live("click", function() { jQuery("#another_div") .children("img") .attr("src", jQuery(this).prev("img").attr("src")); jQuery(this) .prev("img") .attr("src",""); })

También he intentado:

jQuery(this).prev(''img'').removeAttr("src");

Funciona bien en Firefox, IE7-9 y Safari.

Solo en Chrome, la imagen no se elimina incluso cuando la fuente cambia ( src="" ).


Esto funcionó para mí:

var $image = $(''.my-image-selector''); $image.removeAttr(''src'').replaceWith($image.clone());

Sin embargo, tenga cuidado con cualquier controlador de eventos que pueda haber adjuntado a la imagen. Siempre hay las opciones withDataAndEvents y deepWithDataAndEvents para el clon jQuery , pero no he probado el código con ellos: http://api.jquery.com/clone/#clone-withDataAndEvents

Además, si desea hacer esto para varias imágenes, probablemente tendrá que usar algo como jQuery cada una .

Publiqué una respuesta idéntica en una pregunta similar: borrar un IMG con jQuery


Intenta eliminar la imagen y añadirla de nuevo.

jQuery(''#another_div'').children("img").remove() jQuery(''#another_div'').append(''<img>'').attr("src",jQuery(this).prev(''img'').attr("src"));


Lo siguiente funciona bien con Chrome y no parece dar ningún mensaje a la consola:

image.src = "about:blank"; // Clear source path


Podrías cambiarlo a

jQuery(this).attr("src", "data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==");

¿tal vez?


Ya que en mi caso haciendo esto

$(this).attr("src","");

borrando el atributo src, pero la imagen no desaparece. Por lo tanto, acabo de configurar, img etiqueta estilo atributo de visualización en ninguno, como este

$(this).attr("src","").css("display", "none");

Ocultará la imagen. Espero que funcione temporalmente para usted.


intenta configurar primero el src en blanco

$(this).attr("src","");

entonces

$(this).removeAttr("src");


jQuery(''#btn'').live("click", function() { jQuery(''#another_div'') .children("img") .attr("src", jQuery(this).prev(''img'').attr("src")); jQuery(this) .prev(''img'').remove(); })