Что хочу сделать...
Картинка показывается только после того, как полностью загрузится. Как избежать это? Т.е. подгружать картинку постепенно с улучшением качества. Изначально всё размыто... а потом всё лучше и лучше до полной загрузки изображения.
Вариант с асинхронной загрузкой в другой слой или <img> нет рассматриваю, так как картинок может быть и 100 и 1000.
Заранее спасибо.
Спустя 3 минуты, 51 секунда (27.07.2009 - 20:27) S{oRpiO написал(а):
ты хоть код выложи чтоб посмотреть как у тебя вообще производится загрузка файла
Спустя 40 минут, 20 секунд (27.07.2009 - 21:07) Guest написал(а):
Код??? Пишу просто что хочу сделать. Пока у меня просто <img src="..."> Я понятно изьяснился чего хочется добиться?
Спустя 3 минуты, 12 секунд (27.07.2009 - 21:10) sergeiss написал(а):
Тему я перенес в другой раздел (Дизайн и верстка), т.к. к ПХП она не имеет отношения никакого.
А по самой теме - насколько я помню, для достижения данного эффекта надо указать опцию lowsrc у image (картинка с низким качеством). Тогда сначала грузится эта картинка, затем она показывается и одновременно грузится картинка с хорошим качеством. Которая будет показана потом, после загрузки.
И я думаю понятно, что лучше сделать обе картики одинакового размера.
А по самой теме - насколько я помню, для достижения данного эффекта надо указать опцию lowsrc у image (картинка с низким качеством). Тогда сначала грузится эта картинка, затем она показывается и одновременно грузится картинка с хорошим качеством. Которая будет показана потом, после загрузки.
И я думаю понятно, что лучше сделать обе картики одинакового размера.
Спустя 39 минут (27.07.2009 - 21:49) Guest написал(а):
Да ток вот lowsrc работает ток c Netscape. А мне нуно что б и Опера и ИЕ отображали. И какая же это вёрстка??? Возможно это js, хотя вряд ли, он же на серваке не работает
Спустя 2 часа, 12 минут, 44 секунды (28.07.2009 - 00:02) Nikitian написал(а):
Ещё 3 варианта:
1. Использовать формат jpeg2000. Если не ошибаюсь, то он как раз так и подгружается на медленных соединениях: сперва всё размыто и далее всё более чётче.
2. Сделать в <img> обработчик onload:
1. Использовать формат jpeg2000. Если не ошибаюсь, то он как раз так и подгружается на медленных соединениях: сперва всё размыто и далее всё более чётче.
2. Сделать в <img> обработчик onload:
HTML |
<img src="lowess.jpg" onload="this.src='high.jpg';" /> |
3. Ещё более извращённый вариант:
HTML |
<style> img{background:url('lowess.jpg') center no-repeat;} </style> <img src="high.jpg"> |
Этот вариант будет для всех картинок сперва подгружать заглушку, а потом уже грузить саму картинку. Т.к. заглушка закешируется, то при уже второй загрузке страницы будет видна разница в загрузке
Спустя 20 часов, 3 минуты, 43 секунды (28.07.2009 - 20:05) Guest написал(а):
только вот есть одно но... Не помню точно кто, но либо ИЕ, либо Опера не понимает у <img> onload. Вчера сделал по 3 варианту. Картинка отображается медленно накладываясь сверху вниз на бэкграунд. Не очень красиво выходит. А вот про jpeg2000 сейчас почитаю. Спасибо за инфу.
Спустя 4 часа, 9 минут, 22 секунды (29.07.2009 - 00:15) Guest написал(а):
Первый способ тоже отпадает. Ни Ие, ни опера, ни мозилла не поддерживают формат jpeg2000. Хотя уже пора бы...
Какие ещё есть идеи?
Вопрос остаётся открытым.
Какие ещё есть идеи?
Вопрос остаётся открытым.
Спустя 32 минуты, 3 секунды (29.07.2009 - 00:47) S{oRpiO написал(а):
AJAX поможет я чтото подобное там встречал...
Спустя 16 минут, 8 секунд (29.07.2009 - 01:03) jetistyum написал(а):
есть метод сжатия самого JPG - (Progressive JPG)
читай вики
http://ru.wikipedia.org/wiki/Jpg
(Варианты хранения)
вот только поддерживает ли ее GD... или придется все ручками пережимать
читай вики
http://ru.wikipedia.org/wiki/Jpg
(Варианты хранения)
вот только поддерживает ли ее GD... или придется все ручками пережимать
Спустя 1 минута, 6 секунд (29.07.2009 - 01:04) jetistyum написал(а):
а подгрузка нескольких файлов только усугубит ситуацию, увеличивая трафик ... если сначала один, потом второй, третий, потом оригинал.. да и время загрузки...
Спустя 8 минут, 39 секунд (29.07.2009 - 01:13) PandoraBox2007 написал(а):
Progressive JPEG — такой способ записи сжатого изображения в файл, при котором старшие (низкочастотные) коэффициенты находятся в начале файла. Это позволяет получить уменьшенное изображение при загрузке лишь небольшой части файла и повышать детализацию изображения по мере загрузки оставшейся части.
Функция imageinterlace — Включает и выключает чересстрочное формирование изображения
Синтаксис
Функция imageinterlace — Включает и выключает чересстрочное формирование изображения
Синтаксис
PHP |
int imageinterlace (resource image [, int interlace]) |
Используется при создании изображений формата JPEG. Включает (interlace = 1) и выключает (interlace = 0) чересстрочное формирование изображения. При interlace = 1 изображение создается в формате progressive JPEG. Функция возвращает interlace-бит изображения.
Спустя 21 минута, 53 секунды (29.07.2009 - 01:35) kirik написал(а):
PandoraBox2007
Я попробовал только что через imageinterlace() конвертнуть jpeg-картинку в progressive=JPEG - все равно подгружается сверху вниз.. Браузер ФФ3. Кстати вроде бы на picas'е так картинки грузились - сначала в плохом качестве а потом лучше.
Я попробовал только что через imageinterlace() конвертнуть jpeg-картинку в progressive=JPEG - все равно подгружается сверху вниз.. Браузер ФФ3. Кстати вроде бы на picas'е так картинки грузились - сначала в плохом качестве а потом лучше.
Спустя 6 часов, 7 минут, 5 секунд (29.07.2009 - 07:42) Sylex написал(а):
HTML |
<img src="1.jpg" onload="this.style.visibility='visible'" style="visibility: hidden"> |
везде должно работать
Спустя 20 минут, 33 секунды (29.07.2009 - 08:02) kirik написал(а):
Sylex
enoeno хочет чтобы картинка именно подгружалась..
enoeno хочет чтобы картинка именно подгружалась..
Спустя 9 минут, 7 секунд (29.07.2009 - 08:11) Sylex написал(а):
Цитата (kirik @ 29.07.2009 - 11:02) |
Sylex enoeno хочет чтобы картинка именно подгружалась.. |
сорри, туплю, я думал наоборот
Спустя 1 год, 1 месяц, 23 дня, 8 часов, 30 минут, 52 секунды (22.09.2010 - 16:42) WP_user написал(а):
Цитата (PandoraBox2007 @ 28.07.2009 - 22:13) |
Progressive JPEG — такой способ записи сжатого изображения в файл, при котором старшие (низкочастотные) коэффициенты находятся в начале файла. Это позволяет получить уменьшенное изображение при загрузке лишь небольшой части файла и повышать детализацию изображения по мере загрузки оставшейся части. Функция imageinterlace — Включает и выключает чересстрочное формирование изображения Синтаксис int imageinterlace (resource image [, int interlace]) Используется при создании изображений формата JPEG. Включает (interlace = 1) и выключает (interlace = 0) чересстрочное формирование изображения. При interlace = 1 изображение создается в формате progressive JPEG. Функция возвращает interlace-бит изображения. |
Спасибо. Помогло. Осуществлено нашей студией в конструкторе дверей
Спустя 12 дней, 6 часов, 11 минут, 47 секунд (4.10.2010 - 22:54) WP_user написал(а):
Вообще функция удобная, особенно когда нужна частая загрузка изображений при низкой скорости соединения с инетом.
В нашем случае функция незаменима вообще.
В нашем случае функция незаменима вообще.