ugrás a tartalomhoz

Tartalomtól függően cserélődő képek Java Scripttel...

Nutec · 2009. Jan. 9. (P), 21.14
Sziasztok!

A technika (vagy inkább a JavaScript) ördöge megint kifogott rajtam!:(
Problémám a következő:

Adott egy weboldal, amelyben a tartalom egy iframe-ben jelenik meg középen. Minden egyes menü gomb megnyomására egy másik html töltődik a keretbe a gombnak megfelelő tartalommal és ezzel egy időben a parent ablak bal-felső sarkában egy div-ben kis kép jelenik meg amely a tartalomra utal.
Ez eddig rendben is volt kiosztottam az ikonokhoz onMouseDown eseménykezelővel így:
 
<li><a href="munka.htm" target="ablak"><img src="ikonmunka.gif"
onMouseDown="kiskep.src='kiskep2.jpg'" 
alt="Munkáim" /></a></li>
És szépen működött is minden lenyomásnál.

A gond ott jelentkezett, hogy a menü alján van egy vissza gomb, melynek megnyomásakor a frame-ben lévő tartalom visszalép az előzőleg látottra, a kis kép a parent bal sarkában viszont továbbra is az utolsó menügomb által betöltött kis kép marad.
Ebben szeretném a segítségeteket kérni, hogyan lehetne ezt kiküszöbölni/javítani a "vissza" gomb lehetőségének megtartásával (mert azért elég gáz mondjuk egy fényképezőgép az elérhetőségek ablak mellé:))
 
1

Csak tippelek

Franczen Attila · 2009. Jan. 9. (P), 22.03
Csak tipp:

Gondolom a jelenlegi visszagomb mögött is javascript van (history.back). Talán működhet egy plusz függvény mögötte parent.history.back()

Lehet, hogy nagy melléfogás, nem próbáltam ki.
2

Egyenlőre..

Nutec · 2009. Jan. 9. (P), 22.43
Egyenlőre a visszagomb így néz ki:
<li><a href="javascript:history.go(-1);" id="vissza"><img src="ikonvissza.gif" alt="Vissza" /></a></li>
De szöget ütött a fejembe amit írtál!:) Én eddig egy olyan függvényen gondolkodtam, ill. próbálkoztam ami egy változóban tárolja a keret tartalmát és ahhoz változtatja a képet. Valami ilyesmi-re jutottam:

function Ablak(){
var ablak = document.getElementById("ablak.src")	
var kiskep = document.getElementById("kiskep");
if (ablak = "ablak1.htm") kiskep.src = "kiskep1.jpg";
if (ablak = "ablak2.htm") kiskep.src = "kiskep2.jpg";
}
De nem igazán úgy működik ahogy szeretném, csak berakja a kiskep2-t akárhova kattintok(eddig csak onClick-el próbáltam futtatni). Pedig onLoaddal szeretném megoldani, ha betöltődik az iframe előző tartalma, a függvény megvizsgálja mi van a keretben és ahhoz rakja ki a képet(remélem érthető vagyok:D).

Viszont amit Te írtál nem jutott eszembe. Fogom a vissza gombot kirakom külső js-fájlba a két függvényt(egyiket az iframe-hez, másikat a képes div-hez) és onClick-kel a vissza gombhoz rendelem (ha jól értem).
Holnap kipróbálom, mert mára már leégettem az agyam! Addig is köszi a tippet!:)

Nu7ec
3

Jólesz-ez?

Chupacabra · 2009. Jan. 10. (Szo), 11.43
Általában nem vagyok a framek ellensége, de lehet ez az a pont ahol el kéne gondolkoznod nincs-e jobb megoldás. Nyilván nem ismerem az oldaladat, de amit leírsz eléggé kuszának tűnik.
4

Library-k

gabesz666 · 2009. Jan. 11. (V), 12.56
JQuery-hez azt hiszem van ilyen plugin, amivel lehet kezelni a history-t, ExtJS-ben meg biztos vagyok, hogy van. Hozzá lehet rendelni egy függvényt a vissza/előre gomb lenyomásához.
5

Köszönet..

Nutec · 2009. Jan. 12. (H), 13.32
Köszönöm a tippeket! Sajnos az elmúlt napokban nem nagyon volt időm vele foglalkozni, de most már ráállok. Hátha van megoldás. Ha nem akkor legfeljebb ugrik a vissza-gomb...:)