Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.11.2011, 12:08
Интересующийся
Отправить личное сообщение для malkoff Посмотреть профиль Найти все сообщения от malkoff
 
Регистрация: 14.10.2011
Сообщений: 18

показать класс после загрузки изображения
Всем привет
Есть задача. Загружается анимированая гифка (порядка 600кб).
Сверху на нее при помощи position: absolute добавляются кнопки (класс .button)
Нужно сделать так чтобы .button появился плавно после полной загрузки анимированой гифки

пробовал так
$(document).ready(function() {

 $(".buttons").css("display", "none");
   $(".buttons").fadeIn(2500);
});


но кнопки появляются раньше чем догрузится гифка
в чем дело?

спасибо заранее
Ответить с цитированием
  #2 (permalink)  
Старый 03.11.2011, 13:37
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от malkoff
в чем дело?
Событие redy наступает раньше чем загрузится твой "гифка"... Как вариант используй событие load самой "гифки"...
Ответить с цитированием
  #3 (permalink)  
Старый 03.11.2011, 16:55
Интересующийся
Отправить личное сообщение для malkoff Посмотреть профиль Найти все сообщения от malkoff
 
Регистрация: 14.10.2011
Сообщений: 18

спасибо, а можно кусок кода, как это можно реализовать?
Ответить с цитированием
  #4 (permalink)  
Старый 06.11.2011, 01:23
Кандидат Javascript-наук
Отправить личное сообщение для MadGest Посмотреть профиль Найти все сообщения от MadGest
 
Регистрация: 12.07.2010
Сообщений: 123

$('#image').attr('src', 'image.jpg').load(function() {  
    alert('Картинка загружена');  
});


attr можно убрать, это так для наглядности.
Ответить с цитированием
  #5 (permalink)  
Старый 06.11.2011, 03:01
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

MadGest, плохой вариант. Теоретически, возможна ситуация, когда картинка загрузится (и, соответственно, обработчик load выполнится) раньше, чем вы этот пресловутый обработчик повесите (например, такие вещи на ура происходят, если картинка в кэше).

Так что так:
$('#image').load(function() { 
    alert('Картинка загружена'); 
}).attr('src', 'image.jpg');
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как имитировать клик по элементу созданого после загрузки страницы? anoth3r jQuery 3 29.09.2011 12:22
Как сделать паузу после загрузки страницы? denisOgr AJAX и COMET 2 06.08.2011 15:01
Помогите пожалуйста с обьяснением загрузки изображения на сервер. 0931454574 Серверные языки и технологии 3 11.05.2011 18:05
Аjax запрос формирует div с изображениями, нужно показать после загрузки изображений Khmelevsky AJAX и COMET 2 13.09.2010 23:16
Выполнить код после загрузки изображения EugenyK Events/DOM/Window 2 15.07.2008 10:09