событие по появлению 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, время: 14:15. |