Autor Zpráva
vlasta_marko
Profil *
Dobrý den,
potřeboval bych udělat jednu vychytávku, ale nevím jak na to.
Hlavní web by byl rozdělen na dva divy, jeden zarovnaný vlevo (s šířkou 40%), druhý vedle něj vpravo (s šířkou 55%). V pravém divu by byly malé náhledy obrázků a podle toho nad kterým by byl kurzor myši, tak v divu levém by se zobrazoval odpovídající náhled. Po kliknutí na malý náhled by navíc měl vyskočit ještě větší náhled aktuálního obrázku.
Zkoušel jsem hledat všude možně, ale popsané řešení jsem nikde nenašel. Neví někdo?
Děkuji
V. M.
TomasJ
Profil
Určitě využiješ události onmouseover a změny cesty k obrázkům.
<script>
function Nahled(url){document.getElementById("nahled").src="nahledy/"+url;}
</script>
<img src="img1.jpg" onmouseover="Nahled('img1_nahled.jpg');">
<img src="img2.jpg" onmouseover="Nahled('img2_nahled.jpg');">
<img src="img3.jpg" onmouseover="Nahled('img3_nahled.jpg');">

<img src="nahledy/img1_nahled.jpg" id="nahled">

Myslím, že takto by to fungovat mělo, napsal jsem to tady na diskuzi bez zkoušky, takže kdyby nešlo, omlouvám se a opravím.
vlasta_marko
Profil *
Nějak mi to nefunguje. Asi něco dělám blbě...
TomasJ
Profil
vlasta_marko:
Pokud jsi si jistý že to máš stejně, ujisti se že:
1) Nenastavuješ vícekrát id="nahled" - to patří na stránku jen 1x a to tam, kde se má zobrazit náhled.
2) Existuje složka "nahledy" a v ní soubory, které voláš v událostech jednotlivých obrázků.
3) Máš zaplý JavaScript
<script>
function Nahled(url){
var e=document.getElementById("nahled");
if(url){
e.src="nahledy/"+url; //tady se nastavuje složka (v uvozovkách)
if(e.style.display=="none"){e.style.display="block";}
}else{e.style.display="none";}
}
</script>
<img src="img1.jpg" onmouseover="Nahled('nahled1.jpg');" onmouseout="Nahled(0);">
<img src="img2.jpg" onmouseover="Nahled('nahled2.jpg');" onmouseout="Nahled(0);">
<img src="img3.jpg" onmouseover="Nahled('nahled3.jpg');" onmouseout="Nahled(0);">
<!-- A takto dál pokračuješ -->
<br><br>
<img style="display:none;" src="" id="nahled">
vlasta_marko
Profil *
TomasJ: druhá možnost funguje bezvadně, přesně jak jsem si představoval. Díky moc za pomoc :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0