Autor Zpráva
Jakubnovak
Profil *
Zdravím,
mám menu, na které se najede a změní se odkazy v submenu:
<ul>
    <li><a href="#" onmouseover="show_navi('1');"><span>test</span></a></li>
    <li><a href="#" onmouseover="show_navi('2');"><span>test</span></a></li>
    <li><a href="#" onmouseover="show_navi('3');"><span>test</span></a></li>
   </ul> 
   </div>
   
    <div class="podmenu"> 
      <div id="navi_1" style="display:inline;"><a href="#">test</a><a href="#">test</a></div>	    
      <div id="navi_2" style="display:none;"><a href="#">test</a><a href="#">test</a></div>	
      <div id="navi_3" style="display:none;"><a href="#">test</a><a href="#">test</a><a href="#">test</a></div>
    </div>
  </div>


JavaScript:
function show_navi(nav_id)
{
	document.getElementById("navi_1").style.display = "none";
	document.getElementById("navi_2").style.display = "none";
	document.getElementById("navi_3").style.display = "none";
	document.getElementById("navi_" + nav_id).style.display = "inline";
}


Šlo by nějak udělat, aby když někdo najede na nějaká odkaz v navigaci dostal daný odkaz class="select"? Poté by najel na další a ten dotal také class="select", ovšem ten class by tam musel zůstat, dokud nenajede na jiný odkaz v menu. Je to možné?
_es
Profil
Jakubnovak:
Šlo by nějak udělat, aby když někdo najede na nějaká odkaz v navigaci dostal daný odkaz class="select"?
className
Jakubnovak
Profil *
Jak jim to mám ale přidělit, když potřebuju, aby:
Poté by najel na další a ten dotal také class="select", ovšem ten class by tam musel zůstat, dokud nenajede na jiný odkaz v menu.
_es
Profil
Jakubnovak:
aby:
Poté by najel na další
Kto by tam „najel“? Návštevník, či nejaké automatické „najetí“?

ovšem ten class by tam musel zůstat, dokud nenajede na jiný odkaz v menu.
Teda ti treba len pri rôznych udalostiach nastavovať vhodnú vlastnosť className.
Jakubnovak
Profil *
Zkusil jsem toto:
<li><a href="#" onmouseover="this.className='select'" onmouseover="show_navi('2');"><span>test</span></a></li>

Funguje, ale problém je, že i po najetí myší na jiný odkaz má furt class="select", šlo by nějak udělat, aby se po najetí myši na jiný odkaz změnil class z5 na class="menu"?
_es
Profil
Jakubnovak:
onmouseover="this.className='select'" onmouseover="show_navi('2');"
A výsledná vlastnosť (atribút) onmouseover má byť aká?

šlo by nějak udělat, aby se po najetí myši na jiný odkaz změnil class z5 na class="menu"?
Išlo, nastav tomu inému odkazu aby po najetí myši na jiný odkaz změnil class z5 na class="menu" tip: vlastnosť className.
Jakubnovak
Profil *
Zkusil jsem tedy upravit javascript takto:
function show_navi(nav_id)
{
	document.getElementById("navi_1").style.display = "none";
	document.getElementById("navi_2").style.display = "none";
	document.getElementById("navi_3").style.display = "none";
	document.getElementById("navi_" + nav_id).style.display = "inline";
	document.getElementById("navi_" + nav_id).className = "select";
}

Ovšem to nějak nefunguje :(
Jakubnovak
Profil *
Tak když to ověřím pomocí
	if (document.getElementById("navi_" + nav_id).className == "select") {  
  alert ("Jede to!");
}  

Tak to jede, přitom se ale prvek nijak nezměnil
_es
Profil
Jakubnovak:
přitom se ale prvek nijak nezměnil
A nastavil si mu v CSS štýle, aby sa nejako zmenil?
Jakubnovak
Profil *
Tak nakonec jsem to vyřešil, byla to moje blbost - Nastavoval jsem class jinému DIVu, než jsem chtěl. Děkuji za pomoc!

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