2013-09-04 2 views
0

Привет, у меня есть проект, где я получаю сообщения с сервера с сообщением ajax, они обнаруживают изображения в добавленных сообщениях и изменяют их по размеру с помощью функции.Ожидание ответа ajax добавляет и загружает содержимое перед запуском функции

Проблема заключается в том, что я добавляю новое сообщение и пытаюсь запустить функцию, он определяет изображения как размер (высота и ширина) 0, заставляя изображение еще не загрузиться. Я искал, но я не найду ответа, есть способ определить, были ли загружены все изображения в ответе ajax (где он содержится, другие элементы) с использованием .onload или другой альтернативы?

ответ

0
        **Update** 

Я полагаю, что это:

Проверка длины IMG элементов внутри ответ АЯКС:

$("#yourelement").append(html); 
var $dialog = $(html); 
imglength = $dialog.find("img").length; 

Добавить счетчик ++ на каждый IMG загружен, и если проверить его равна длине IMG:

n_images = 0; 
$("#yourelement img").on('load', function(){ // check for every new image loaded in # 
n_images++; 

if (n_images == imglength) { 
//alert(imglength); // I used to verify if it works 
yourfunction(); // will fire when all new images have been appended and loaded 
} 

});