Autor Zpráva
jefitto44
Profil
Mám štandardný obrázok <img> vložený do stránky. Potrebujem, aby keď na neho ukážem myšou, aby sa zmenil na iný obrázok (tzv. hover verzia obrázka). Ako sa to dá docieliť? Poprosím nejaký kód, alebo odkaz, nakoľko v js sa nevyznám absolútne vobec
Bubák
Profil
Pokud neumíš JS, udělej to pomocí CSS.
Ještě dodám, pokud trváš na JS řešení, koukni na www.jpw.cz, tam je řešení k nalezení.
Taps
Profil
jefitto44:
http://jecas.cz/universalni-hover
jefitto44
Profil
Ako sa to pomoci css dá? Jedine tak, že by som to dal na pozadie... tomu som sa ale chcel vyhnúť
Joker
Profil
jefitto44:
Jedine tak, že by som to dal na pozadie... tomu som sa ale chcel vyhnúť
Proč?
Bubák
Profil
http://kod.djpw.cz/ubdb
Na odkazech a po přidání třídy pro obrázek to chodí i v IE6 a možná i v IE5/IE5.5.
http://kod.djpw.cz/vbdb
Jsou i další možnosti, třebas měnit obrázek změnou text-indent
Měnící se obrázek po najetí myši
jefitto44
Profil
Jj vyriešené pomocou
Záměna obrázku při kliknutí
Bubák
Profil
Tak to jsi mohl napsat hned, že hledáš Záměna obrázku při kliknutí a nemotat do toho hover.
jefitto44
Profil
Práveže delám zámenu obrázku pri hoveri... ale našiel som len pri kliknutí, tak som si to prerobil. Výsledný kod vyzerá nejako tako

<img src="images/wrapper/ban1.png" alt="" name="ban1" onmouseover="document.images['ban1'].src='images/wrapper/ban1hover.jpg'" onmouseout="document.images['ban1'].src='images/wrapper/ban1.png'">
Joker
Profil
jefitto44:
V daném případě by stačilo použít jen this.src (je to pak i jednodušší, pokud se do kódu vkládá více obrázků přes kopírovat-vložit).

Nevýhoda tohoto přístupu je, že hover obrázek se začne načítat až po najetí myší, takže před prvním zobrazením může být nějaká prodleva.
Bubák
Profil
Nějak takto: Preload obrázku
Ve článku je ukázka JS hoveru <img> včetně preloadu.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0