Реклама на сайте Advertise with us
Тема: Как сделать полный preload images в html ? Расширенный поиск по форуму
 
Внимание! В связи с устареванием топика эта страница была взята из кэша.
Автор Сообщение
Информация о пользователе Жека


Зарегистрирован: 07.06.03
Сообщения: 821
Ссылка на сообщениеДобавлено: 06/11/03 в 14:51     

На страничке есть rollover images (12 пиксов по 8Кб)
Причём заменяемый пикс начинает скачиваться тока тогда, када на него наводишь мышкой.
На модеме это убого смотрится!

Как сделать, чтобы все картинки сразу подгружались, а потом легко и быстро подменялись?

Сенькс

K началу

 
Информация о пользователе greencore


Зарегистрирован: 06.10.01
Сообщения: 733
Ссылка на сообщениеДобавлено: 06/11/03 в 15:22     

загружай их в 1х1 пиксах в начале страницы

K началу

 
Информация о пользователе Weber


Зарегистрирован: 03.10.03
Сообщения: 1703
Ссылка на сообщениеДобавлено: 06/11/03 в 15:26     

Функция:

function MM_preloadImages() { //v3.0
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];}}
}

Вызывать так:
<body onLoad="MM_preloadImages('im1.gif','im2.gif')">

В скобках вбивай столько картинок, сколько нужно!

K началу

 
Информация о пользователе Painter


Зарегистрирован: 29.08.03
Сообщения: 668
Ссылка на сообщениеДобавлено: 06/11/03 в 16:19     

В дримвэйвере 4 это всё есть, там кнопка "rollover и что-то дальше"

K началу

 
Информация о пользователе sAx


Зарегистрирован: 07.06.00
Сообщения: 2238
Ссылка на сообщениеДобавлено: 06/11/03 в 16:54     

Можно и так:

Код:
<SCRIPT LANGUAGE="JavaScript">
<!--
function newImage(arg) {
   if (document.images) {
      rslt = new Image();
      rslt.src = arg;
      return rslt;
   }
}
function changeImages() {
   if (document.images && (preloadFlag == true)) {
      for (var i=0; i<changeImages.arguments.length; i+=2) {
         document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
      }
   }
}
var preloadFlag = false;
function preloadImages() {
   if (document.images) {
      img_1 = newImage("images/but1_o.gif");
      img_2 = newImage("images/but2_o.gif");
      preloadFlag = true;
   }
}

// -->
</SCRIPT>


</head>
<body  onload="preloadImages();">
....
Там, где надо менять картинку:

<A HREF="page.html"
  ONMOUSEOVER="changeImages('im1', 'images/but1_o.gif'); return true;"
  ONMOUSEOUT="changeImages('im1', 'images/but1_n.gif'); return true;"><!--
             --><IMG name="im1" SRC="images/but1_n.gif" BORDER=0></a>

---------------------------------
Вариант посложнее (наводишь мышой на одну картинку, а меняется другая):

<IMG name="im1" SRC="images/but1_n.gif" BORDER=0>
<A HREF="page.html"
  ONMOUSEOVER="changeImages('im1', 'images/but1_o.gif'); return true;"
  ONMOUSEOUT="changeImages('im1', 'images/but1_n.gif'); return true;"><!--
             --><IMG SRC="images/other_image.gif" BORDER=0></a>


Все. Может и не оптимально, но работает железно...
Юзай и радуй своих серферов.

K началу

 
Информация о пользователе Жека


Зарегистрирован: 07.06.03
Сообщения: 821
Ссылка на сообщениеДобавлено: 06/11/03 в 21:05     

МУЖИКИ!!!

Огромное спасиба!


Будут ещё идеи - пишите -)

K началу

 
Информация о пользователе Weber


Зарегистрирован: 03.10.03
Сообщения: 1703
Ссылка на сообщениеДобавлено: 07/11/03 в 09:18     

Жека писал:
МУЖИКИ!!!

Огромное спасиба!


Будут ещё идеи - пишите -)


Да пожалуйста, только зачем тебе еще идеи, если и это работает... %)

K началу

 
Информация о пользователе Жека


Зарегистрирован: 07.06.03
Сообщения: 821
Ссылка на сообщениеДобавлено: 07/11/03 в 10:16     

Weber

Первое предложение глюковато работает -(
Пишет - Done, but with errors on page и картинки вообще не ролловятся.
Просто вчера было лениво в коде копацца - сёдня разберусь -)

Вот кстати, что откопал у другу на паге:

<script LANGUAGE="JavaScript">
browser_name = navigator.appName;
browser_version = parseFloat(navigator.appVersion);
if (browser_name == "Netscape" && browser_version >= 3.0) { roll = 'true'; }
else if (browser_name == "Microsoft Internet Explorer" && browser_version >= 3.0) { roll = 'true'; }
else { roll = 'false'; }
function over(img,ref) { if (roll == 'true') { document.images[img].src = ref; } }
function out(img,ref) { if (roll == 'true') { document.images[img].src = ref; } }
if (roll == 'true')
{

a1=new Image;a1.src="images/mem.jpg";
a2=new Image;a2.src="images/memg.jpg";
a3=new Image;a3.src="images/inst.gif";
a4=new Image;a4.src="images/instg.gif";
a5=new Image;a5.src="images/tour.jpg";
a6=new Image;a6.src="images/tourg.jpg";

}
</script>


Парни, как считаете - стоит ли оно того ?

K началу

 
Информация о пользователе Weber


Зарегистрирован: 03.10.03
Сообщения: 1703
Ссылка на сообщениеДобавлено: 07/11/03 в 12:22     

Жека писал:
Weber

Первое предложение глюковато работает -(
Пишет - Done, but with errors on page и картинки вообще не ролловятся.


Так... а ты верно делал?

Там где я функцию написал - ее нужно меджу тэгами <head> и </head> прописать:

<script language="JavaScript" type="text/JavaScript">
ТУТ ИДЕТ ФУНКЦИЯ, ПРИВЕДЕННАЯ ВЫШЕ
</script>

И потом из <body> - вызываешь...
Я только что проверил - работает...

K началу

 
Информация о пользователе Жека


Зарегистрирован: 07.06.03
Сообщения: 821
Ссылка на сообщениеДобавлено: 07/11/03 в 13:51     

во бл*

я её после ХЭДА сунул ...
сорри -)

K началу

 
Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!
Внимание! В связи с устареванием топика эта страница была взята из кэша.

Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »