[quote автор]Найти "виновника торжества" - того, кто меняет src <img> несколько раз в секунду. И тут мы снова возвращаемся к? Вы теперь выяснили для себя что конкретно стоит за каждым вагоном паравоза? Или продолжаем в духе а-ля:[/quote] - да!
Вот с коментариями и переделаная.
Вот это было раньше
$("#target").one('load', loadCallback).attr('src', adresse).each(function () {
if (this.complete) $(this).trigger('load');
});
Вот так я переделал.
$("#target").bind('load', loadCallback);//вешаем евент на img c id="target"
var imgObj = $("#target").attr('src', adresse);//засовываем в imgObj картинку которую получили в последствии изменения аттрибута src, в него грузим картинку adresse="/JFreeeChartServlet/generateImg?cookieName=random"
$(imgObj).each(function () {//вызиваем функцию для нашей картинки
if (imgObj.complete) // картинка загружена полностью, тогда
$(imgObj).trigger('load');//триггер вызывает евент 'load' - идет на выполнение функция loadCallback().
});
Этот весь замут с триггером нужно, чтоб сразу же прочитать кукисы с сервера и вставить необходимые значения в плагин imgAreaSelect. Если я просто вызову функцию loadCallback() после загрузки картинки без этих фишек, у меня при первом вызове кукисы будут нулевые.