|
|
|
Supreme Being
      
участник
Last Login: 19.09.2007 1:55
Сообщ.: 97,
Visits: 1 021
|
|
прелоадим картинки:
images=new Array(6); images[0]=new Image(); images[0].src="images/voroby.jpg"; images[1]=new Image(); images[1].src="images/voroby1.jpg";
далее на какое-либо событие навешиваем document.images["tpu"].src=images[idd].src; где tpu - картинка, idd - int-переменная
Вызываем кучу раз это событие, затем смотрим логи:
GET /Default.asp view=0 GET /Common/styles.css GET /images/voroby.jpg GET /images/voroby1.jpg GET /images/voroby2.jpg GET /images/voroby3.jpg GET /images/voroby0.jpg GET /images/voroby4.jpg GET /images/voroby.jpg GET /images/voroby1.jpg GET /images/voroby4.jpg GET /images/voroby.jpg GET /images/voroby1.jpg GET /images/voroby2.jpg GET /images/voroby3.jpg GET /images/voroby4.jpg
т.е. прелоадинг не работает и клиент каждый раз запрашивает картинки с сервера. Почему?
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.02.2004 16:41
Сообщ.: 1 756,
Visits: 19 372
|
|
Под прелоадингом понимается предварительная загрузка картинок, перед их использованием на странице, обычно браузер их кэширует, и потом можно менять src и картинки будут браться из кэша
Если же кэш отключить, то при каждой смене src браузер будет обращаться к веб-серверу.
В частности, как это работает у меня: есть Apache для Win2k
есть файл
<html> <body> <image id=imagen width="50%" height="50%" src="1.jpg"> <script> for (i=1;i<9;i++) { eval("var image" + i + " = new Image()") eval("image" + i + ".src = \"" + i + ".jpg\"") } </script> <input type=button onclick="eval('imagen.src=image' + Math.ceil(Math.random()*8) + '.src')" value=Apply> </body> </html>
если кэш в браузере IE включен, то дополнительных обращений к серверу не происходит при нажатии на кнопку Apply
если же отключить кэш (Tools->Internet Options->General->Settings->Every Visit To The Page), то при каждом нажатии на Apply происходит обращение к веб серверу
|
|
|
|
|
Supreme Being
      
участник
Last Login: 19.09.2007 1:55
Сообщ.: 97,
Visits: 1 021
|
|
| Я в курсе, что такое прелоад. Потому и делаю. Проблема в том, что не работает.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.02.2004 16:41
Сообщ.: 1 756,
Visits: 19 372
|
|
Да у тебя похоже ничего не работает :)
Сервер то у тебя какой?
Каким браузером заходишь?
Как у него с настройками кэша?
Больше информации - больше надежды на решение
|
|
|
|
|
Supreme Being
      
участник
Last Login: 19.09.2007 1:55
Сообщ.: 97,
Visits: 1 021
|
|
| Информация в моём случае бесполезная - ie 5.5 rus, кэширование включено. Сервак w2k, в IISе кэш ASP-страниц включен. Response.Expires=0 отсутствует.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.02.2004 16:41
Сообщ.: 1 756,
Visits: 19 372
|
|
| Свойства сайта -> Configuration -> HTTP Headers -> Enable Content Expiration -> Expire Immediately - если врублено, то поэтому
|
|
|
|
|
Supreme Being
      
участник
Last Login: 19.09.2007 1:55
Сообщ.: 97,
Visits: 1 021
|
|
| Не надо относиться как к ламеру. Сказал же, на серваке кеширование включено. Expire Immediately !!!ЕСТЕСТВЕННО ВЫКЛЮЧЕНО!!!
|
|
|
|
|
Supreme Being
      
участник
Last Login: 12.02.2004 16:41
Сообщ.: 1 756,
Visits: 19 372
|
|
Я, конечно, отношусь к тебе, как к отцу программирования. Ты написал, что на серваке включено кэширование ASP страниц, а это не одно и то же с кэшированием контента. Что ты понимаешь под кешированием ASP страниц? Буферизацию или Cache ISAPI Applications?
А мой пример нормально работает или нет?
|
|
|
| | |