![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Guest
Сообщений: n/a
|
Здравствуйте!
С JavaScript знаком плохо, ниже приведён код скрипта, при помощи которого при наведении на объект курсором (напр. ссылка в виде изображения) меняетьтя определённое изображение, имя кот. мы задаём сами и меняет его назад при уводе курсора. Смешно написал, надеюсь что поняли. Думаю можно было проще написать, что речь идёт о onMouseOver и onMouseOut. В данном случаи при наведении курсора на picture1.gif изображение с именем name="Image1" (здесь это оно и есть) меняеться на picture2.gif. Этим достигаеться подсветка кнопок. Вопрос: как поменять код, чтоб менялось не одно изодражение , а два? Т.е. при наведени менялось одно изображение, а при нажатии другое, совсем с другим name ? <script language="JavaScript" type="text/JavaScript"> <!-- 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_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_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; } 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];} } //--> </script> ..... ..... ..... <a href="index.html"><img src="images/picture1.gif" width=59 height=14 border="0" name="Image1" id="Image1" onmouse over ="MM_swapImage('Image1','','images/picture2.gif',1)" onMouseOut="MM_swapImgRestore()"></a> |
|
|||||
|
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
С приведенным кодом к сожалению не ознакомился -- лень.
Поэтому только общие рекомендации. Тут по крайней мере два пути:1.создать еще одну функцию, которая меняет вторую картинку (при нажатии на первую) и подвесить ее на onClick первой (кстати, на одно событие одного и того же тэга можно вешать сколько угодно функций, например: onClick="function_0(); function_1(); function_2();" и т.д.); 2.прописать все в одной ф-ции, примерно так: <script language="JavaScript"> function onclick_imageA() { //через ID document.imageA.src = "нужный url"; document.imageB.src = "нужный url"; /* //или через name document.images["imageA"].src = "нужный url"; document.images["imageB"].src = "нужный url"; */ /* //или через порядковый номер картинке в массиве document.images document.images[0].src = "нужный url"; document.images[1].src = "нужный url"; */ } </script> <img src="imageA.gif" id="imageA" name="imageA" onclick="onclick_imageA()"> <img src="imageB.gif" id="imageB" name="imageB"> Последний раз редактировалось Илья К; 11.05.2004 в 18:58. |
|
|||||
|
А еще можно одним скриптом убить двух багов... э-э-э... я вот о чем, о передаче двух параметров через аргумент:
function swap(img_name,new_name){ img_name.src=new_name; } <img name="ImageA" src="someOne.jpg" onClick="swap('ImageA','new1.jpg');swap('ImageB','new2');"> <img name="ImageB" src="someTwo.jpg"> Может, немного мудрено, но зато на любые случаи жизни
__________________
:confused: :( :eek: :D :rolleyes: :p ;) :) :o :cool: :mad: Во имя процессора-отца, процесса-сына и святого root'а. Аминь. |
|
|||||
|
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
Ну что ж, и тут без комментариев...
![]() |
|
|||||
|
Guest
Сообщений: n/a
|
Решил сделать так:
<a href="index.htm" target="cont"><IMG SRC="images/pic.gif" WIDTH=82 HEIGHT=23 border="0" name="razr" onMouseOver="document.images.razr.src='images/5-r.gif'" onMouseOut="document.images.razr.src='images/5.gif'" onClick="document.images.pole.src='images/good.gif'"></a> И ни каких скриптов я не пишу. Вопрос: корректно ли я возвращаю изображение при уводе мыши с изображения? (я про onMouseOut=" ") |
|
|||||
|
Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
|
Что значит, корректно ли? Уточни, пожалуйста.
|
|
|||||
|
Guest
Сообщений: n/a
|
Илья К
По моему можно это делать как-то не с помощью onMouseOut, а что-то типо return=false, но как именно.... |
![]() |
Часовой пояс GMT +4, время: 19:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|