Как мне ждать загрузки изображения после вызова ajax с использованием jquery? - PullRequest
1 голос
/ 15 июня 2009

У меня есть скрипт Python, который выполняет некоторые манипуляции с изображением JPEG. Я передаю некоторые параметры этому сценарию и вызываю его со своей HTML-страницы. Скрипт возвращает тег img src = "newimage.jpg.

Я знаю, как ждать ответа от скрипта, но я не знаю, как определить, когда изображение полностью загружено (когда оно есть, я хочу его отобразить). Теперь я получаю медленную загрузку изображения, поэтому пользователь видит этот процесс «загрузки». Вместо этого я хочу получить сообщение, сообщающее пользователю, что нужно ждать, пока изображение загружается, только тогда я хочу отобразить изображение.

Ответы [ 3 ]

4 голосов
/ 15 июня 2009

Вы можете динамически создавать новое изображение, связывать что-либо с его событием загрузки и устанавливать источник:

$('<img>').bind('load', function() {
    $(this).appendTo('body');
}).attr('src', image_source);
2 голосов
/ 15 июня 2009
0 голосов
/ 15 июня 2009

В других ответах упоминалось, как это сделать с помощью jQuery, но независимо от используемой вами библиотеки, в конечном итоге вы будете привязаны к событию загрузки изображения.

Без библиотеки вы могли бы сделать что-то вроде этого:

var el = document.getElementById('ImgLocation');

var img = document.createElement('img');
img.onload = function() {
    this.style.display = 'block';
}
img.src = '/path/to/image.jpg';
img.style.display = 'none';

el.appendChild(img);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...