|
|
|
| [CODE]
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<script>
function MM_preloadImages()
{
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function ChangeIm(n) {
var obj=document.getElementById('im1');
obj.src=document.MM_p[n].src;
}
</script>
</head>
<body onLoad="MM_preloadImages('BB.gif','BK.gif','BN.gif','BP.gif','BQ.gif','BR.gif')">
<img id="im1" src="BK.gif" onClick="this.src=document.MM_p[0].src">
<br>
<input type="button" value="0" onClick="ChangeIm(0)">
<input type="button" value="1" onClick="ChangeIm(1)">
<input type="button" value="2" onClick="ChangeIm(2)">
<input type="button" value="3" onClick="ChangeIm(3)">
<input type="button" value="4" onClick="ChangeIm(4)">
<input type="button" value="5" onClick="ChangeIm(5)">
</body>
</html>
[/CODE]
По идее все картинки должны предварительно загрузится в броузер. НО, меня смущает что нажимая на кнопочки я вижу как идёт обращение к инету и картинки сменяются не так быстро как хотелось бы, я ведь на диалапе сижу. Можете сами посмотреть по ссылке.
www.extrabrain.kiev.ua/001/preload.htm
Может чего не так здесь obj.src=document.MM_p[n].src; ? Но я пробовал obj=document.MM_p[n] - вообще ничего не показывает.
Так как быть? Или так и должно быть? | |
|
|
|
|
|
|
|
для: ExtraBrain
(25.08.2006 в 18:34)
| | По коду всё правильно. Проверил на (своём) удалённом сервере в IE - предзагружается. В Вашем браузере не отключено ли кеширование случайно? | |
|
|
|
|
|
|
|
для: 12345
(25.08.2006 в 23:52)
| | Спасибо. Выставил в настройках IE "Проверять наличие обновления сохранённых страниц" - "Автоматически" и заработало. Раньше стояло -"При каждом посещении страницы". Но мне кажется что при таких настройках и без предзагрузки после того как хотя бы один раз картинку показать то она уже будет показываться в дальнейшем быстро. Как бы отпадает необходимость в предзагрузке. А ведь хочется чтобы всегда работала предзагрузка не зависимо от настроек обозревателя у пользователя (как в моём случае до перенастройки). Я думаю что подойдёт способ показать сначала все картинки в одном месте, одна поверх другой, потом все их попрятать(hidden) и потом показывать в нужный момент и в нужном месте. Что скажете? | |
|
|
|
|
|
|
|
для: ExtraBrain
(26.08.2006 в 10:25)
| | По идее, это одно и то же. Проверьте, может, окажется не одно и то же. И способ с visibility:hidden. По умолчанию у IE кеширование до выключения окна бр-ра, поэтому сойдёт стандартный способ (на JS), остальное - проблемы настройщика. | |
|
|
|