Сайты - по стандартам, но не стандартные сайты!
blablabla
Почему в некоторых версиях IE6, при наведении на ссылку, картинка как бы моргает? Как этого избежать?
Нет на форуме
rezook
Сделать preload?
Нет на форуме
? Как ?
Нет на форуме
AKS
Расскажи по подробнее,plz-актуальная проблема(этож JS?)
Пытался на скроллер картинку легкую загнать,везде ништяк,только ИЕ(создалось такое ощущение)ее постоянно подгружает заново.
Отредактированно tapazukk (06.06.2010 14:30)
Нет на форуме
Preload я имел ввиду самый обычный:
var img = new Image; img.src = pathToFile;
Может, если картинка находится в кэше, проблем удастся избежать?
Нет на форуме
А без Явы никак?
Нет на форуме
А вообще-то если через сценарий задать для свойства стиля background-image значение-указатель на предварительно загруженную картинку, то она должна быть взята из кэша:
var img = new Image; img.src = pathToFile; function someFn() { el.style.backgroundImage = 'url('+img.src+')'; }
Об этом я уже как-то раз читал...
Нет на форуме
rezook
Я не знаю, как без скрипта... А чем плохо?
Нет на форуме
Да плохо тем, что, если у клиента отключена ява, ничего не будет :-(
Нет на форуме
Может быть я неправильно выразился. На ссылку просто навешивается картинка. И при наведении она не меняется. Никаких других картинок подгружать не надо.
UPD. Обнаружил косяк. Там, где моргало, было просто отключено кэширование в браузере :-)
Отредактированно rezook (06.06.2010 15:38)
Нет на форуме
rezook
А если стиль для ссылки вынести во внешнюю таблицу стилей вместо инлайн-стиля, как показано в примере? Может поможет?
Нет на форуме
rezook написал:
А без Явы никак?
.preload {
display:none;
}
Нет на форуме
rezook
...плохо тем, что, если у клиента отключена ява, ничего не будет
Раз уж речь идет о картинках, то хотелось бы отметить, что вероятность отключенных сценариев ничтожно мала по сравнению с вероятностью отключенных изображений...
Нет на форуме
можно на CSS и без JavaScript и все это с прелоадом и без морганий.
вкратце: один файл, размер минимум в два раза больше видимой части.
a:link {background:..... left top}
a:hover {background:..... left bottom}
или
a:link {background:..... left top}
a:hover {background:..... right top}
либо координаты в пикселях, если размеры ссылки известны.
Нет на форуме
На самом деле это называется flickering и есть баг IE. Не использовать фон для ссылок.
Нет на форуме