Rollover s funkci onClick – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Rollover s funkci onClick – JavaScript, AJAX, jQuery – Fórum – Programujte.comRollover s funkci onClick – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

svobodicz0
Newbie
28. 1. 2008   #1
-
0
-

Zdravím, poprosil bych zdejší guru o radu.
Vymýšlím script, který bude klasický rollover doplněný o funkci onclick.Na začátku není vybrané žádné tlačítko. Při najetí na něj se změní. Při kliku se změní a pokud byl předtím vybrán jiný, tak ten se vrátí do původního stavu. OnMouseOver mi funguje, ale onClick nějak nedávám.



<script language="javascript">

graphic1_vychozi = new Image();
graphic1_vychozi.src = "menu/a_menu_dub1.gif";
graphic1_novy = new Image();
graphic1_novy.src= "menu/p_menu_dub1.gif";
graphic2_vychozi = new Image();
graphic2_vychozi.src = "menu/a_menu_dub2.gif";
graphic2_novy = new Image();
graphic2_novy.src= "menu/p_menu_dub2.gif";
graphic3_vychozi = new Image();
graphic3_vychozi.src = "menu/a_menu_dub3.gif";
graphic3_novy = new Image();
graphic3_novy.src= "menu/p_menu_dub3.gif";

var selected='';

function imageChange(imageName,name)
{
document.images[imageName].src = eval(name + ".src");

}

function imageClick(imageName,name)
{

document.images[imageName].src = eval(name+".src"); //zmena
document.images[selected].src = eval(imageName+".src");//co bude ve vychozim

selected=imageName;
}


function imageAction(ac,imageName,name) {
if (imageName!=selected){
if ((ac=='over')) {
imageChange(imageName,name);
}
if (ac=='out') {
imageChange(imageName,name);

}
if (ac=='click') {
imageClick(imageName,name);

}
}
}
</SCRIPT>
<body>
<A ID="" HREF="#" onMouseOver= "imageAction('over','image1','graphic1_novy')" onClick="imageAction('click','image1','graphic1_novy')" onMouseOut= "imageAction('out','image1','graphic1_vychozi')"><IMG SRC="menu/a_menu_dub1.gif" NAME="image1" width="190" height="30" hspace="0" vspace="0" BORDER="0"></A>

<A ID="" HREF="#" onMouseOver= "imageAction('over','image2','graphic2_novy')" onClick="imageAction('click','image2','graphic2_novy')" onMouseOut= "imageAction('out','image2','graphic2_vychozi')"><IMG NAME="image2" SRC="menu/a_menu_dub2.gif" BORDER="0" vspace="0" hspace="0"></A>

<A ID="" HREF="#" onMouseOver= "imageAction('over','image3','graphic3_novy')" onClick="imageAction('click','image3','graphic3_novy')" onMouseOut= "imageAction('out','image3','graphic3_vychozi')"><IMG NAME="image3" SRC="menu/a_menu_dub3.gif" BORDER="0" vspace="0" hspace="0"></A>
</body>

Nahlásit jako SPAM
IP: 213.180.48.–
28. 1. 2008   #2
-
0
-

Pouzij objekt this a vzdy ho uloz do promenne a pak ho zmen zpatky.

function imageClick(imageName,name)                   

{

this.src = eval(name+".src"); //zmena
selected.src = eval(imageName+".src");//co bude ve vychozim

selected=this;
}


100% korektni reseni by bylo si to this predavat jako parametr. To uz ale radsi neres, myslim, ze i takhle to pojede.

Nahlásit jako SPAM
IP: 81.30.238.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
svobodicz0
Newbie
29. 1. 2008   #3
-
0
-

Dík za radu. Jsem to zkusil, ale nefunguje. :smile10:

Nahlásit jako SPAM
IP: 213.180.48.–
29. 1. 2008   #4
-
0
-

A co to dela/nedela?

Nahlásit jako SPAM
IP: 81.30.238.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
29. 1. 2008   #5
-
0
-

A co to dela/nedela?

Nahlásit jako SPAM
IP: 81.30.238.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
svobodicz0
Newbie
30. 1. 2008   #6
-
0
-

Ahoj, no ta funkce onCLick, jako by nebyla. V chybový konzoli je hláška, že "undedined has no properties". Tohle je na mě vyšší dívčí.

Nahlásit jako SPAM
IP: 213.180.48.–
31. 1. 2008   #7
-
0
-

Áha, on zakladni problem je, ze THIS jen objekt, ktery spousti tu udalost. Tedy ten link.

Nahlásit jako SPAM
IP: 81.30.238.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Onclick() — založil mauricius

OnClick na obrázek — založil Starsam

Nefunguje OnClick... — založil Calvary

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý