pomoc s javascriptom

Programovacie jazyky, rady, poradňa...
Old Dirty Bastard
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2658
Registrovaný: 13 júl 2006, 8:05
Bydlisko: phpbb_posts

pomoc s javascriptom

Príspevok od používateľa Old Dirty Bastard »

zdravim, mam javascript, ktory použivam v menu na obrazkove odkazy, pri prechode myškou menim obrazok na odlišny, ale chcel by som to zmenit tak, že pri kliknuti na nejaky obrazok sa mi nezmeni obrazok len prostrednictvom onmouseover. chcel by som, aby po kliknuti na obrazok ten obrazok aj zmeneny ostal, až kym nekliknem na niektory dalši obrazok.. nechcem proste, aby sa tie obrazky menili len pri prechode myškou, chcem aby po kliknuti zmenene aj ostaly.

javascript vyzera takto:

Kód: Vybrať všetko

function changeImages()
{
	if (document.images)
	{
		for (var i=0; i<changeImages.arguments.length; i+=2)
		{
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}
odkaz v menu asi nejako takto:

Kód: Vybrať všetko

<a href="?sekcia=domov" title="Domov" onmouseover="changeImages('domov', 'obrazky/tlacitka/domov_on.gif'); return true;" onmouseout="changeImages('domov', 'obrazky/tlacitka/domov.gif'); return true;"><img name="domov" src="obrazky/tlacitka/domov.gif" height="20" alt="Domov" /></a>
skusal som to cez onclick ale nejak mi to vobec nefungovalo, možete mi niekto poradit ako by ste to spravili vy? popripade ako by som to mal spraviť, ako by to malo vyzerať..
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Neviem, či som pochopil, čo vlastne robíš. Ale ako som to pochopil, tak ja by som použil radšej CSS.
Old Dirty Bastard
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2658
Registrovaný: 13 júl 2006, 8:05
Bydlisko: phpbb_posts

Príspevok od používateľa Old Dirty Bastard »

no neda sa, preto to chcem cez js :) co si nepochopil? ako mam v menu odkazy ktore su robene cez obrazky.. to vidis na tej druhej casti kodu v mojom prvom prispevku. ide o to, že ak prejdem myskou cez niektory obrazok, prostrednictvom javascriptu sa ten obrazok zmeni na nejaky iny, ale kedze je to robene len cez onmouseover a onmouseout, ked das mysku prec z toho obrazku, vrati sa na povodny.. ja chcem aby niejel pri prechode myskou cez obrazok sa ten obrazk menil na iny, ja chcem aby aj pri kliknuti zostal obrazok zmeneny, az pokial nekliknem na nejaky dalsi obrazok(odkaz) z menu..

Kód: Vybrať všetko

http://www.spsesoc.kvalitne.cz/
tu to mas.. pozri sa na menu ako mam spravene.. obrazky sa pri prechode myskou cez nich menia.. ja chcem aby sa obrazok taktiež menil aj pri kliku a ostal zmeneny az kym nekliknem na nejaky dalsi..
//no neviem ako ti to mam inak povedat :( snad este ze chcem dosiahnut nieco ako je pri CSS atributa a:active v IE, čiže ak klikneš na link v ktorom je použita tato atributa, bude aj po kliknuti a nasledovnom reloade stranky dany link stale aktivny(podciarknuty, zvyrazneny, ako to v CSS definuješ..)
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Hover by som urobil pomocou CSS a to, aby ostal ten obrázok zmenený by som urobil tiež pomocou CSS a úpravy php kódu. Teda by si pre každú stránku upravil menu tak, aby mal správny link v menu nastavený nejakú triedu, ktorá by sa postarala o to, aby sa tam zobrazil správny obrázok.
Teda napr. bude mať jeden prvok z menu class="active".

PS: V správnej otázke by si sa mal napísať, čo chceš dosiahnuť a nie, ako to chceš urobiť. V takom prípade je možné, že niekto vymyslí lepšie riešenie, ako používaš ty.
Old Dirty Bastard
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2658
Registrovaný: 13 júl 2006, 8:05
Bydlisko: phpbb_posts

Príspevok od používateľa Old Dirty Bastard »

trcoha odveci,nie? vytvarat pre kazdy odkaz v menu vlastnu triedu :roll: radsej to nejak poriesim cez js.

//vobec mi nevadi ked niekto pride na efektivnejsie riesenie.. ale to tvoje sa mi zda dost neefektivne.. vytvarat samestatne classyprekazducky odkaz v CSS, keby som mla v menu 20 odkazov?
impact
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 401
Registrovaný: 17 nov 2005, 16:04

Príspevok od používateľa impact »

Chrono nemyslel, ze vytvoris triedu pre kazdy jeden link.

Musis si vytvorit v CSS dve-tri triedy, jednu neaktivnu, druhu pre hover-ed link a poslednu pre stlaceny link, ktora bude rovnaka ak ta pre :hover

Na stranke cssplay najdes vela prikladov na menu.

Priklad z tej stranky

Kód: Vybrať všetko

a, a:visited {
background:#4477AA no-repeat scroll 10px;
color:#FFFFFF;
display:block;
padding:5px 5px 5px 20px;
text-decoration:none;
width:125px;
}

a.active a:hover {
background:#225588 no-repeat scroll 11px 10px;
color:#99CCFF;
}

Potom pri kazdom vypisovani linku si overis ci je akurat ta polozka v menu aktivna(ci si na tej stranke na ktoru menu ukazuje) a nastavis tam nieco ako:

Kód: Vybrať všetko

<a href="index.php?id=2" class="active">Polozka #2</a>
Old Dirty Bastard
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2658
Registrovaný: 13 júl 2006, 8:05
Bydlisko: phpbb_posts

Príspevok od používateľa Old Dirty Bastard »

ma asi nechapete alebo čo.. to nejde v CSS

Kód: Vybrať všetko

http://www.spsesoc.kvalitne.cz/
pisal som sem odkaz na stranku, mam menu v obrazkoch! tak čo tu stale pišete o CSS?
potrebujem to menu ako som už pisal spraviť tak, aby sa obrazok nemenil na ten akoze "podskrtnuty" len pri prechode, ale aby taky aj ostaval po kliknuti a naslednom reloade stranky.. až kym nekliknem na nejaky dalši, potom sa jeho aktivnosť alebo ako to mam povedať presunie na ten druhy obrazok..
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

a prečo nepoužiješ php? jednoducho si budeš posielať na ktorý sa kliklo a ten vykreslý "stlačený"
ak to chceš ale iba js, tak si túto info o stlačenom môžeš prenášať v cookies. Keď dojdem domov a nikto ma nepredbehne, tak ti to môžem napísať.
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Old Dirty Bastard napísal:ma asi nechapete alebo čo.. to nejde v CSS

Kód: Vybrať všetko

http://www.spsesoc.kvalitne.cz/
pisal som sem odkaz na stranku, mam menu v obrazkoch! tak čo tu stale pišete o CSS?
potrebujem to menu ako som už pisal spraviť tak, aby sa obrazok nemenil na ten akoze "podskrtnuty" len pri prechode, ale aby taky aj ostaval po kliknuti a naslednom reloade stranky.. až kym nekliknem na nejaky dalši, potom sa jeho aktivnosť alebo ako to mam povedať presunie na ten druhy obrazok..
Nič v zlom, ale ešte raz si prečítaj tú moju odpoveď. Ktokoľvek, kto sa aspoň trochu vyzná v php, html a css to urobí za chvíľu a nebude potrebovať žiadny javascript.
Old Dirty Bastard
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2658
Registrovaný: 13 júl 2006, 8:05
Bydlisko: phpbb_posts

Príspevok od používateľa Old Dirty Bastard »

OK, to sprav v CSS, som zvedavy ako to spraviš.. neviem si to predstaviť..
Napísať odpoveď