Autor Zpráva
margotka
Profil
Ahojte, potreboval by som pomoc,
ide o to, že mám menu robené v js:
<table id="menu"  >
     <tr> 
       <td><a href="cennik.php"><img  src="css/uvod/cennik.jpg" name="cennik" onMouseOver="document.images['cennik'].src='css/uvod/cennikf.jpg'"
onMouseOut="document.images['krby'].src='css/uvod/cennik.jpg'" id="cennik"  width="140" height="354" style="border: none;"  /></a></td>
        
        <td><a href="css/uvod/aktuality.php"><img src="css/uvod/aktuality.jpg" name="aktuality" onMouseOver=         "document.images['aktuality'].src='css/uvod/aktualityf.jpg'"
onMouseOut="document.images['aktuality'].src='css/uvod/aktuality.jpg'" width="140" height="354" alt="aktuality" style="border: none;" /></a>
        </td>
</tr>
</table>

chcem sa spýtať ako sa dá docieliť, že po kliknutí na jednu z ikoniek menu ostane zafarbená - aktívna - počas pobytu na načítanej stránke na ktorú odkazuje? Položky sú zafarbené na modro v normálnom stave, ak prejdem ponad ním myšou zmení sa farba na žltú a chcem aby takú aj políčko zanechalo... nasledovne:
[url=]http://nikomi.sk/menu.png[/url]

Skúšal som to robiť pomocou onLoad, ale keď som prešiel na určenú sekciu, stránka sa stále načítava (točil sa prúžok načítavania).
Vopred ďakujem za pomoc :)
peta
Profil
"Skúšal som to robiť pomocou onLoad, ale keď som prešiel na určenú sekciu, stránka sa stále načítava (točil sa prúžok načítavania). "
Ten kod neni prilozeny, takze nelze rici, co tam mas chybne.

V odkazu nemas nikde receno, jak se stranka jmenuje, takze dalsi strance nepredavas, co si ma oznacit. To by slo resit treba vytazenim z location.href a porovnani s kazdym odkazem v menu. Nebo ulozenim do cookies.
margotka
Profil
peta:
no skusal som to iba tak jednoducho, neviem moc ako pracuje onLoad... ale v óde to vyzeralo asi takto:
<a href="cennik.php"><img  src="css/uvod/cennik.jpg" name="cennik" onMouseOver="document.images['cennik'].src='css/uvod/cennikf.jpg'"

onLoad="document.images['cennik'].src='css/uvod/cennikf.jpg'"

onMouseOut="document.images['krby'].src='css/uvod/cennik.jpg'" id="cennik"  width="140" height="354" style="border: none;"  /></a>
margin
Profil *
Jak na to, jsou dvě rady na stránce Moje první stránka - chodnik74.ic.cz
Nejsou to možnosti, jde to i jinak.
margotka
Profil
margin:
jo je mi to jasné, ale menu som spracoval ako samostatnú stránku menu.php a do ostatných stránok ho chcem zavolať pomocou <?php include("menu.php"); ?>. To znamená, že pre všetky sekcie budú iba jedno menu a nie ako keby to bolo v html, že každá stránka.html má pod hlavičkou hneď v kóde vypísane menu ako napríklad:
<div class="menu">
            <ul>
                <li class="li_first"><a href="uvod.html">Úvod</a></li>
                <li><a href="cennik.html">Cenník</a></li>
                <li><a href="aktuality.html">Aktuality</a></li>
                
                <li class="sel"><a href="kontakt.html">Kontakt</a></li>
            </ul>
            </div>
kde práve zvolená sekcia kontakt je vysvietená pomocou <li class="sel">

Neviem či som to teda napísal zrozumiteľne čo myslím
peta
Profil
margotka: Ano. Ne.
<?php include("menu.php"); ?> - vlozi php kod do stranky. Pokud ten kod je jen html, pak se ve vsech strankach zobrazi stejne menu. Pokud tam nemas kod, ktery zjistuje aktualni stranku a neupravuje vysledny html kod (porovna s aktualni adresou a zmeni kod)... (JS: window.location nebo PHP $_SERVER, __FILE__)
Objekt window » Objekt window.location
http://php.net/manual/en/reserved.variables.server.php
http://www.php.net/manual/en/language.constants.predefined.php
Mno a to ne se tyka toho, ze to prilis asi nechapu, co tam mas nebo nemas.

<img  src="css/uvod/cennik.jpg" name="cennik"
 onMouseOver="document.images['cennik'].src='css/uvod/cennikf.jpg'"   
 onLoad="document.images['cennik'].src='css/uvod/cennikf.jpg'"   
 onMouseOut="document.images['krby'].src='css/uvod/cennik.jpg'" 
 id="cennik"  width="140" height="354" style="border: none;"  />
Jo, tak takhle urcite ne. Img onload se tyka nacitani obrazku. Se strankou to nema nic spolecneho.

S tim odkazem jsem to myslel tak, ze:
<ul>
<li id=oznac1><a href="odkaz.html?oznac=1">aaa</a></li>
</ul>
<script>alert(window.location.search.replace('?','').replace('=','');</script>
mimochodec
Profil
margotka:
To, co popisuješ v #5, je správný postup. Není žádný důvod do toho míchat JS. Aby ti to fungovalo, ten soubor musí mít příponu php, nikoliv html.
margotka
Profil
Lenže ja potrebujem, aby ostalo rozsvietené aktuálne políčko, ktoré je v menu zvolené
panther
Profil
margotka:
a kde je problem? Dodej odkaz na problematickou stranku. Sam pises v [#5] spravny postup, jak aktivni polozku v menu zvyraznit. JS neni potreba, takze [#6] s klidem ignoruj.
margotka
Profil
toto je link stránky...
Neviem či to nechápem, ale proste ak dám hodnotu <li class="sel"> na nejaké políčko, svieti stále iba toto jedno... neviem to spraviť aby mi to pri prekliknutí na inú sekciu svietilo na inom...
panther
Profil
margotka:
neviem to spraviť aby mi to pri prekliknutí na inú sekciu svietilo na inom
tak, konecne mame realny problem, ktery jde resit.

http://polopate.jakpsatweb.cz/index.php?page=include4
margotka
Profil
jané diky moc, pomohlo a funguje super... ale ešte by som predsa potreboval jednu malú radu k tomu...
potreboval by som ešte v tomto menu spraviť rozbalovacie menu... ak kliknem na nejjaký link, otvrí sa z neho ešte niekoľko podsekcií...
vieš ako na to?
panther
Profil
margotka:
vieš ako na to?
vim, ale jen te navedu, at na tom mas podil vlastni snahy.

Pri kliknuti na nejakou polozku odeber aktivnimu submenu (pokud nejake je) tridu, ktera jej dela rozbalenym (treba .active). A nasledne polozce, na kterou bylo kliknuto, tuto tridu pridej.

V CSS pak bude pro tuto tridu nastaveno display: block, zatimco defaultne bude vse skryto (javascriptem).
margotka
Profil
panther
nevedeľ by si mi dať nejaký aspoň konkrétny príklad ako sa posunúť Ďalej?
moc mi to nie je jasné,
ďakujem :)

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: