событие по появлению img
В результате выполнения определенной функции в блоке
id=messages появляется изображение, скажите как создать функцию по появлению изображения в этом блоке |
Цитата:
img.onload = function() { alert('Загружено!'); } if (img.complete) { // картинка уже загружена (из кэша) img.onload(); } |
да, но что то этот код не работает
http://imedia.in.ua/main/page/catalog_add |
img - это переменная, ссылающаяся на DOM-элемент изображения.
У тебя же она не определена в коде. Кроме того, у тебя чуть ниже уже дублируется этот код, просто переписанный с использованием jQuery! И загляни в консоль, там ошибки сыплются. |
удалил ошибки в консоли, скажите почему он определяет высоту как 0 в алерте?
|
Вот у меня есть например такой блок с изображениями, как мне прописать при условии загрузки всех изображений выполнять такой то код на jquery
<div id="page_slider"> <ul id="slider"> <li><img src='<?=$slider_img1;?>' alt="Создание сайтов" /> <li><img src='<?=$slider_img2;?>' alt="Изготовление веб сайтов" /> <li><img src='<?=$slider_img3;?>' alt="Разработка интернет проектов" /> <li><img src='<?=$slider_img4;?>' alt="Web design" /> </ul> </div> |
var $images = $('#slider img'); var loaded = 0; var inc = function() { loaded++; if (loaded == $images.length) { alert('loaded'); } }; $images.load(inc).each(function() { if (this.complete) inc(); }); |
// берем все необходимые нам картинки var $img2 = $('#messages2 img'); // ждем загрузки картинки браузером $img2.load(function(){ // удаляем атрибуты width и height $(this).removeAttr("width") .removeAttr("height") .css({ width: "", height: "" }); // получаем заветные цифры var width = $(this).width(); var height = $(this).height(); alert(width+'х'+height); Так почему же в этом случае ответ 300x0? Помогите пожалуйста разобраться в этом http://imedia.in.ua/main/page/catalog_add |
var img = $("#messages img")[0]; // Получаем IMG нашей картинки var pic_real_width, pic_real_height; $("<img/>") // Сделаем в памяти копию этой картинки, чтобы избежать проблем с CSS .attr("src", $(img).attr("src")) .load(function() { // Здесь копия нашей картинки загружена и можно получить её размеры pic_real_width = this.width; // Учтите: $(this).width() не сработает pic_real_height = this.height; // потому что картинка находится в памяти. alert(pic_real_width+'x'+pic_real_height) }); Так работает все |
Цитата:
.prop('src', img.src); ;) |
Часовой пояс GMT +3, время: 13:17. |