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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> прелоадер рисунка 
:(
    Опции темы
abalich
Дата 16.1.2009, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

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



Всем привет. Мне нужна функция прелоадера рисунка. т.е. перед тем как рисунок загрузиться на его месте заменяющая картинка.
Как это сделать в IE или CHROME, mozila я могу а вот как в OPERA........ smile 


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
bars80080
Дата 17.1.2009, 01:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

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



насколько я помню, никак. фишка в том, что опера не будет грузить рисунка, пока он реально не будет виден на странице
PM MAIL WWW   Вверх
ksnk
Дата 17.1.2009, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

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



bars80080, О какой версии Оперы идет речь?

abalich, Ежели это действительно так, то можно его попробовать "реально" вставить на страницу в абсолютный слой с visibility:hidden;

Хотя у меня на Опере 9.52 работает "классический вариант" :
Код

<img id='test' >

<script>

function preload(_id,url){
    var elem=document.getElementById(_id);
    elem.src='loading.gif';
    var img= new Image();
    img.src=url;
    img.onload=function(){
        img.onload=null;
        elem.src=url;
    };
    if(img.complete)
        img.onload();
}

var date=new Date();
// обязательная загрузка с сервера
//preload('test','http://wallpapers.ru/zakroma/upload/200901/20090116_taka_wallpapers_ru_nebo_1280x1024_(134539)WP.jpg?'+date.getTime());

//  просто показать
preload('test','http://wallpapers.ru/zakroma/upload/200901/20090116_taka_wallpapers_ru_nebo_1280x1024_(134539)WP.jpg');

</script>




Это сообщение отредактировал(а) ksnk - 17.1.2009, 08:53


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
egrik
Дата 17.1.2009, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



В Опере еще есть прикол - если изображение берется из кэша, то событие onload не сработает, вылечить можно так: сначала объявляем обработчик, затем грузим изображение, то есть так:

Код

function preload(_id,url){
    var elem=document.getElementById(_id);
    elem.src='loading.gif';
    var img= new Image();
    img.onload=function(){
        img.onload=null;
        elem.src=url;
    };
    img.src=url;
}


Конструкция:
[code= javascript]
if(img.complete)
        img.onload();
[/code]
по все видимости, как раз для этого и предназначалась, теперь от нее можно отказаться.
PM MAIL ICQ Skype   Вверх
abalich
Дата 18.1.2009, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

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



ок. пасиб много че нашел. А как сделать прелоадер в "кэш"
т.е. у меня есть img и у него onmouseover а там при наведении другой рисунок. Вот мне его надо подгрузить до onmouseover что при наведении он просто опоявился.


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
egrik
Дата 18.1.2009, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



В общем то вот эта часть как раз и загружает изображение в "кэш".

Код

var img= new Image();
img.onload=function(){
};
img.src=url;

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


 




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


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

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