Autor Zpráva
David1256
Profil *
Dobrý den, mám tento problém chtěl bych aby se mi po kliknutí na obrázek pocitace zmenil obrazek portal1 na obrazek portal ale porad mi to nejak nefunguje v cem je problem?

Můj kód.

<script>
promenna.src = "portal1.gif";
</script><img src="pocitace.gif" onclick="promenna.src = 'portal.gif';">
Bubák
Profil
Koukni na http://www.jakpsatweb.cz/javascript/preload-obrazku.html
Tamní příklad sice používá jiné JS události, ale to nevadí.
David1256
Profil *
Tam sem koukal ale prave ze mi to nefunguje.
panther
Profil
David1256:
Tam sem koukal ale prave ze mi to nefunguje.
koukáš špatně. V onclicku je this.src a ne promenna.src (co podle tebe znamená to „promenna“, co tam máš?).
David1256
Profil *
no ja myslel ze radek - promenna.src = "portal1.gif";
jakoby říká že promenna.src je obrazek portal1, jakoby že se mi po kliknutí na jeden obrázek změní druhý obrázek
David1256
Profil *
Zkrátka jestli nejde v javascriptu po kliknutí na jeden obrázek né aby se změnil ten samý na jiný ale aby se po kliknutí na jeden obrázek změnil obrázek která je treba o 50px jinde.
David1256
Profil *
*Zkrátka jestli nejde v javascriptu aby se po kliknutí na jeden obrázek změnil jiný obrázek né ten stejný obrázek ale obrázek třeba na druhém konci stránky.
panther
Profil
David1256:
místo this (tenhle aktuální prvek) můžeš použít getElementById('id').
Bubák
Profil
Jde to, příklad je na http://www.jakpsatweb.cz/javascript/priklady/obrazky-zamena0.html
Místo name je vhodnější použít ID, jak radí panther.
Třetí příklad mění třetí obrázek, onclick="document.images[2].src='druhy.gif'", dvojka je tam proto, že se počítá od nuly.
Proto programátor nedokáže spočítat třebas počet dětí na školním výletě ;-)
Trejpa
Profil
David1256:
po kliknutí na jeden obrázek změnil jiný obrázek
<img src=pocitace.gif onclick="document.getElementById('druhy').src='portal1.gif';">
...
<img src=portal.gif id=druhy>
David1256
Profil *
Děkuju moc, přesně to jsem potřeboval. Mě napadla teď eště jedna věc, ale na to založím pro přehlednost radši nové téma.
David1256
Profil *
Jen eště takový doplněk, jak udělám více událostí naráz aby se na událost onclick změnily třeba dva obrázky? Mám kód
<img src="pocitace.gif" onclick="document.getElementById('portal').src='portal1.gif'" onclick="this.src = 'pocitace2.gif'"> 
v čem je chybný popřípadě, jak udělám tedy na událost onclick více událostí.
Keeehi
Profil
Takto:
<img src="pocitace.gif" onclick="document.getElementById('portal').src='portal1.gif';this.src = 'pocitace2.gif'">
Bubák
Profil
Přiřadíš více akcí jedné události a oddělíš je středníkem, to celé bude v uvozovkách.. Všimni si, jak ti poradil Trejpa, v jeho kódu je na konci (nepovinný) středník.
David1256
Profil *
Díky moc.
Trejpa
Profil
David1256:
Lze použít funkci.

Univerzální: (spouští se pro každý obrázek zvlášť s parametrem)
<script>
function zamena(id,obr){document.getElementById(id).src=obr;}
</script>
<img src=pocitace.gif onclick="zamena('portal','portal1.gif');zamena('portaly','portaly1.gif');">
...
<img src=portal.gif id=portal>
<img src=portaly.gif id=portaly>


Jednoúčelová: (spouští se bez parametru)
<script>
function zamena(){
document.getElementById('portal').src='portal1.gif';
document.getElementById('portaly').src='portaly1.gif';
document.getElementById('portalky').src='portalky1.gif';
}</script>
<img src=pocitace.gif onclick="zamena();">
...
<img src=portal.gif id=portal>
<img src=portaly.gif id=portaly>
<img src=portalky.gif id=portalky>

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: