SE VOCÊ PRECISA USAR AJAX ...
Eu vim através de casos em que os manipuladores de carga não eram a escolha certa. No meu caso, ao imprimir via javascript. Portanto, existem duas opções para usar o estilo AJAX:
Solução 1
Use os dados de imagem Base64 e um serviço de imagem REST. Se você tiver seu próprio serviço da web, poderá adicionar um script REST JSP / PHP que ofereça imagens na codificação Base64. Agora, como isso é útil? Me deparei com uma nova sintaxe legal para codificação de imagem:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhE..."/>
Assim, você pode carregar os dados do Image Base64 usando o Ajax e, após a conclusão, criar a sequência de dados Base64 na imagem! Muito divertido :). Eu recomendo usar este site http://www.freeformatter.com/base64-encoder.html para codificação de imagens.
$.ajax({
url : 'BASE64_IMAGE_REST_URL',
processData : false,
}).always(function(b64data){
$("#IMAGE_ID").attr("src", "data:image/png;base64,"+b64data);
});
Solution2:
Engane o navegador para usar seu cache. Isso fornece um bom fadeIn () quando o recurso está no cache do navegador:
var url = 'IMAGE_URL';
$.ajax({
url : url,
cache: true,
processData : false,
}).always(function(){
$("#IMAGE_ID").attr("src", url).fadeIn();
});
No entanto, ambos os métodos têm suas desvantagens: o primeiro funciona apenas em navegadores modernos. O segundo apresenta falhas de desempenho e depende da suposição de como o cache será usado.
Saúde, vai