![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2002
Адрес: Украина, Киев
Сообщений: 7
|
Помогите сделать простейший код для ролловера (в виде двух картинок). Отлично помню, что для IE это делается в одну строчку, но забыл как. И чтобы в других браузерах ролловер отображался в статическом режиме.
Заранее благодарю. |
|
|||||
|
Регистрация: Dec 2001
Адрес: n/a
Сообщений: 1,386
|
<html>
<head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <script language="JavaScript"> <!-- function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } 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];}} } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } //--> </script> </head> <body bgcolor="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages('roll_picture_1.gif','roll_picture_2.gif',')"> <a href="1.htm" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image1','','roll_picture_1.gif',1)"><img src="picture_1.gif" name="Image1" width="93" height="37" border="0"></a></td>a href="2.htm" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','roll_picture_2.gif',1)"><img src="picture_2.gif" name="Image2" width="93" height="37" border="0"></a> </body> </html>
__________________
Однажды, я захотел понюхать кока-колу, но кубики льда, застряли у меня в носу! |
|
|||||
|
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
1) Для ИЕ. НН это не воспринимает. Про другие не знаю.
<script language="JavaScript" src="schulga.js"> function handleOver1() { if (document.images) document.imgName1.src=window.event.srcElement.id; } function handleOut1() { if (document.images) document.imgName1.src=window.event.srcElement.anchor; } </script> ******** <img onMouseOver="handleOver1();return true;" onMouseOut="handleOut1();return true;" src="out.jpg" anchor="out.jpg" id="over.jpg" name=imgName1> 2) Наверное, для всех. Для ИЕ и НН -- точно. <script language="JavaScript" src="schulga.js"> function handleOver1() { if (document.images) document.imgName1.src="over.jpg"; } function handleOut1() { if (document.images) document.imgName1.src="out.jpg"; } </script> ******** <img onMouseOver="handleOver1();return true;" onMouseOut="handleOut1();return true;" src="out.jpg" name=imgName1> Для создания нескольких роллов просто размножить код недостаточно. Если нужно n роллов, то придется создать n функций для "out", n "over" и n "imgName". Вообще, для сокрытия чего-либо от НН, есть такой вариант: function smt () { if (document.all) { тело скрываемой функции } } или if (document.all) { скрываемый код } P.S. Не всё мне ясно в этой функции. Зачем нужно if (document.images) в её теле и return true; при вызове? Прекрасно ведь без этого пашет. |
|
|||||
|
Регистрация: Dec 2001
Адрес: n/a
Сообщений: 1,386
|
2Илья К
ты не прав! по поводу того кода, что я дал. Он работает в NN-4 проверено лично! тока я ему дал с пред-загрузкой так граматней по моему..
__________________
Однажды, я захотел понюхать кока-колу, но кубики льда, застряли у меня в носу! Последний раз редактировалось DUDE; 28.12.2002 в 01:19. |
|
|||||
|
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
Дело в том, что свое сообщение я начал писать до того, как ты вывесил свое, а закончил после.
![]() Я просто дал два варианта, один из которых не катит под НН. |
|
|||||
|
Регистрация: Dec 2001
Адрес: n/a
Сообщений: 1,386
|
![]()
__________________
Однажды, я захотел понюхать кока-колу, но кубики льда, застряли у меня в носу! |
![]() |
Часовой пояс GMT +4, время: 18:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|