Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Использование obj.complete, при замене src рисунка 
:(
    Опции темы
quiz
Дата 23.9.2007, 01:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 15.8.2005

Репутация: нет
Всего: нет



Использую свойство рисунка "document.getElementById(obj).complete" для проверки состояния загрузки.
При первой загрузке страницы все хорошо, но после замены яваксриптом src картинки на другой, во время загрузки новой картинки свойство complete остается true. Видимо браузер видит старую картинку и говорит, что она уже загружена.
Как узнать состояние загрузки новой картинки?

спасибо
PM MAIL   Вверх
Mymik
Дата 23.9.2007, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 11
Всего: 78



quiz, используем поиск -->> состояние загрузки изображения


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Ghirik
Дата 24.9.2007, 05:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



А что, на вопрос то так ни кто и не ответит?
Спрашивали про complete, а послали подальше smile
Мне то же интересно, как использовать complete, если была смена src.


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
dstorm81
Дата 24.9.2007, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


бездельник
***


Профиль
Группа: Завсегдатай
Сообщений: 1178
Регистрация: 18.1.2006
Где: (16RU)

Репутация: 20
Всего: 39



не загонялся на эту тему, но как мне кажется
лучше всё картинки сразу подгружать массивов через new Image()
а затем проводить манипуляцию с ними

а как вариант ответа на ваш вопрос, попробовать создавать новую картинку через createElement, с присваиванием уникального id и var.



--------------------
на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#)

PM   Вверх
smartov
Дата 24.9.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Ghirik, зачем complete если onload работает прелестно?
PM MAIL   Вверх
Ghirik
Дата 24.9.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Цитата

Ghirik, зачем complete если onload работает прелестно?


Да для предзагрузки, onload вполне достаточен. Но у меня предзагружаются несколько изображений одновременно, и нужно знать все ли они загрузились. Суммировать события onload, как то не красиво, вот и хотелось бы проверять состояние. 

Цитата

а как вариант ответа на ваш вопрос, попробовать создавать новую картинку через createElement, с присваиванием уникального id и var.


Да, я именно так сейчас и сделал, набиваю массив через createElement, но пока ещё не проверял complete, нужно на сервер выкладывать. Проверю отпишусь...


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Ghirik
Дата 25.9.2007, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Не всё так просто, делаю вариант листалки изображений, слегонца запутался.
Я не меняю src, но происходит похожая непонятка. IE выдает complete = false, в Мозилле и Опере нормально.


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
Ghirik
Дата 25.9.2007, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 919
Регистрация: 26.3.2007

Репутация: 13
Всего: 20



Нет, всё нормально, проверил. 
Везде true, это у меня в скрипте косяк...


--------------------
Отдадим всё клиенту, пускай его машина мучается...

PM MAIL   Вверх
smartov
Дата 25.9.2007, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



В общем то я не совсем понял в чем разница между проверкой complete у каждого объекта и цеплянием onload каждому, но главное что работает smile
PM MAIL   Вверх
quiz
Дата 29.9.2007, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 15.8.2005

Репутация: нет
Всего: нет



Цитата(smartov @ 25.9.2007,  21:53)
В общем то я не совсем понял в чем разница между проверкой complete у каждого объекта и цеплянием onload каждому, но главное что работает smile

Попробовал onload - событие не возникает, если изображение уже было загружено и с сервера больше не вытаскивается.
Если ставить на событие onload исчезание надписи "загрузка рисунка", то при показе "старых" картинок надпись висит вечно
PM MAIL   Вверх
smartov
Дата 29.9.2007, 22:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



quiz, 
Цитата(quiz @  29.9.2007,  13:10 Найти цитируемый пост)
Попробовал onload - событие не возникает, если изображение уже было загружено и с сервера больше не вытаскивается.

А как в таком случае использовать complete можешь привести пример работающего кода? Если да - с меня +
PM MAIL   Вверх
SelenIT
Дата 29.9.2007, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Цитата(quiz @  29.9.2007,  14:10 Найти цитируемый пост)
опробовал onload - событие не возникает, если изображение уже было загружено и с сервера больше не вытаскивается.

Это где так? В Опере, вероятно? И при каких настройках?

Лично мне пока известны лишь одни грабли с onload-ом - случай анимированных gif-ов в IE...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
quiz
Дата 30.9.2007, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 15.8.2005

Репутация: нет
Всего: нет



Цитата(smartov @ 29.9.2007,  22:51)
quiz, 
Цитата(quiz @  29.9.2007,  13:10 Найти цитируемый пост)
Попробовал onload - событие не возникает, если изображение уже было загружено и с сервера больше не вытаскивается.

А как в таком случае использовать complete можешь привести пример работающего кода? Если да - с меня +

Ничего сложного 

if (document.getElementById("mypicture").complete) { alert('рисунок загружен'); }

Добавлено через 9 минут и 21 секунду
Цитата(SelenIT @ 29.9.2007,  23:22)
Цитата(quiz @  29.9.2007,  14:10 Найти цитируемый пост)
опробовал onload - событие не возникает, если изображение уже было загружено и с сервера больше не вытаскивается.

Это где так? В Опере, вероятно? И при каких настройках?

Лично мне пока известны лишь одни грабли с onload-ом - случай анимированных gif-ов в IE...

В IE. Гиф обычный, не анимированный.
Меняю scr явакриптом, событие onload возникает только если рисунок еще не кешировался браузером.
PM MAIL   Вверх
SelenIT
Дата 30.9.2007, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



quiz, почему-то у меня не воспроизводится. Onload исправно рапортует о выполнении при любых настройках кеша. Проверял в IE6 SP2 и IE7 standalone.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
smartov
Дата 1.10.2007, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



quiz, 
Цитата(quiz @  30.9.2007,  08:12 Найти цитируемый пост)
Ничего сложного 

if (document.getElementById("mypicture").complete) { alert('рисунок загружен'); }

Ха. А как его отлавливать предлагаешь? Таймер заводить? Нет спасибо.
А на счет onload действительно укажи браузер где возникает проблема, и желательно пример
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0578 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.