javascript in navigacija
 
juresl 24. feb 2011 15:36:33 Pridružen od:
16. avg 2007
209 objav
74 23 4
#1

Pri spodnji kodi imam en problemček.. gre za drop-down navigacijo. Skripta najde class elementa v navigaciji #nav (čez katerega greš z miško) in odpre-"zaslajda" istoimenski class znotraj diva #sub-nav. Vse deluje kot mora, le ena pomankljivost je.. ko greš z miško preko sub-menuja se le ta zapre, kar se nebi smel. Kaj delam narobe?


var timer = [];
$("#nav li").hover(
function () {
var id = jQuery.data(this);
var className = $(this).attr('class');
var submenu = '#sub-nav .'+className;

$(this).addClass('selected');

timer[id] = setTimeout(function() {
$(submenu).slideDown(300);
timer[id] = "";
}, 300);
},
function () {
$(this).removeClass('selected');

var id = jQuery.data(this);
var className = $(this).attr('class');
var submenu = '#sub-nav .'+className;

if (timer[id] != "") {
clearTimeout(timer[id]);
} else {
$(submenu).slideUp(300);
}
}
);

Hvala za pomoč in Lp!


všeč(1) ni všeč(0) spam(0)
 
FrEaKmAn 1. mar 2011 16:48:52 Pridružen od:
2. dec 2007
303 objav
175 59 0
#2

Pokaži še HTML kodo..


všeč(1) ni všeč(0) spam(0)
 
juresl 1. mar 2011 17:03:28 Pridružen od:
16. avg 2007
209 objav
74 23 4
#3

Evo html:


<div id="nav">
<ul>
<li class="home"><a href="#" title="Home">Home<p>Home is d'best</p></a></li>
<li class="gallery"><a href="#" title="Gallery">Gallery<p>Content is King!</p></a></li>
<li class="forum"><a href="#" title="Forum">Forum<p>Showcase Component</p></a></li>
<li class="articles"><a href="#" title="Articles">Articles<p>Component</p></a></li>
<li class="other"><a href="#" title="Other">Other<p>Sample Other</p></a></li>
</ul>
</div>

<div id="sub-nav">
<div class="home">
<ul>
<li><a href="#" title="Poll">Poll</a></li>
<li><a href="#" title="Search">Search</a></li>
<li><a href="#" title="Wrapper">Wrapper</a></li>
<li><a href="#" title="Weblinks">Weblinks</a></li>
<li><a href="#" title="Joomla">Joomla! Overview</a></li>
<li><a href="#" title="Contacts">Contacts</a></li>
<li><a href="#" title="News feeds">News feeds</a></li>
</ul>
</div>
<div class="gallery">
<ul>
<li><a href="#" title="Poll">Poll</a></li>
<li><a href="#" title="Search">Search</a></li>
<li><a href="#" title="Wrapper">Wrapper</a></li>
<li><a href="#" title="Weblinks">Weblinks</a></li>
<li><a href="#" title="Joomla">Joomla! Overview</a></li>
<li><a href="#" title="Contacts">Contacts</a></li>
<li><a href="#" title="News feeds">News feeds</a></li>
</ul>
</div>
<div class="forum">
<ul>
<li><a href="#" title="Poll">Poll</a></li>
<li><a href="#" title="Search">Search</a></li>
<li><a href="#" title="Wrapper">Wrapper</a></li>
<li><a href="#" title="Weblinks">Weblinks</a></li>
<li><a href="#" title="Joomla">Joomla! Overview</a></li>
<li><a href="#" title="Contacts">Contacts</a></li>
<li><a href="#" title="News feeds">News feeds</a></li>
</ul>
</div>
<div class="articles">
<ul>
<li><a href="#" title="Poll">Poll</a></li>
<li><a href="#" title="Search">Search</a></li>
<li><a href="#" title="Wrapper">Wrapper</a></li>
<li><a href="#" title="Weblinks">Weblinks</a></li>
<li><a href="#" title="Joomla">Joomla! Overview</a></li>
<li><a href="#" title="Contacts">Contacts</a></li>
<li><a href="#" title="News feeds">News feeds</a></li>
</ul>
</div>
<div class="other">
<ul>
<li><a href="#" title="Poll">Poll</a></li>
<li><a href="#" title="Search">Search</a></li>
<li><a href="#" title="Wrapper">Wrapper</a></li>
<li><a href="#" title="Weblinks">Weblinks</a></li>
<li><a href="#" title="Joomla">Joomla! Overview</a></li>
<li><a href="#" title="Contacts">Contacts</a></li>
<li><a href="#" title="News feeds">News feeds</a></li>
</ul>
</div>
</div>
všeč(1) ni všeč(0) spam(0)
 
krifa 1. mar 2011 17:23:12 Pridružen od:
9. feb 2010
402 objav
401 54 6
#4

Submenuje bi moral imeti vgnezdene v li-je glavne navigacije, na katere tudi bindaš hover action. Če se ti ne da zajebavat pa si poglej jquery superfish menu. Ne znam povedat bolj po domače:)

da ne pozabim... Ie6 na li-jih ne zazna hover eventa.


všeč(1) ni všeč(0) spam(0)
Prevajanje - prevajalska agencija pravo-prevajanje.si
Awesome jobs for awesome people: Dlabs jobs
 
juresl 1. mar 2011 19:07:39 Pridružen od:
16. avg 2007
209 objav
74 23 4
#5

Hm.. to sem opazil pri drugih podobnih drop-down menujih, da bi moral submenu biti v li (logično), ampak raje imam simpl in nazorno kodo, zato sem delal na tak način. Očitno bom res mogo v li dat, da se nebom preveč zafrkaval. Hm.. čudno v IE-testerju mi hover event deluje normalno.


všeč(1) ni všeč(0) spam(0)
 
suprpp 2. mar 2011 11:37:36 Pridružen od:
21. jun 2008
362 objav
841 126 37
#6

IE-tester ni vedno 100% zanesljiv, 100% zanesljivost dobiš samo z Windows XP , ki ima native IE6.



Sicer pa lahko naložiš whatever:hover in bo tudi IE6 podpiral :hover na vseh elementih.



Kot so ti že omenili, najlepše in najlažje ti bo, če zadevo gnezdiš znotraj <li>-ja.

Tutorial in tutorial


všeč(2) ni všeč(0) spam(0)
SSD spletno gostovanje in Registracija domene NEOSERV
cPanel, PHP 4-7, SSH, GIT, SVN | 800+ domenskih končnic | Brezplačna selitev strani k NEOSERV
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se