WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   jquery hjälp (https://www.wn.se/forum/showthread.php?t=37297)

BoXon 2009-06-08 14:00

Hej!

Håller på med en meny i jQuery, och är överaskad av hur smidigt och simpelt det var för att få det snyggt! B)

Men, jag har lyckats få det helt perfekt, förutom att när man klickar på en länk igen så vill jag att den skall stängas, men
som det är nu så stängs den och öppnas direkt igen, men hur gör jag för att stänga den? :)

Kod:
Kod:

$(document).ready(function() { Initialize(); });

function Initialize() {
  $('#menu>ul ul').hide();
  $('#menu>ul a').click(function() { ShowMenu(this); });
}

function ShowMenu(e) {
  $('#menu>ul ul').slideUp();
  $(e).parent().children('ul').slideDown();
}

Mvh
Patrik

elitasson 2009-06-08 14:21

Sök lite på funktionen: toggleSlide()

wiB 2009-06-08 14:25

Den heter f.ö. slideToggle

http://docs.jquery.com/Effects/slideToggle

elitasson 2009-06-08 15:33

Stämmer, fel av mig. :)

BoXon 2009-06-08 15:40

Tack!

Men, förstår inte riktigt hur jag skall implementera koden i exemplet i min kod för att åstadkomma det jag vill. :(

Kimpo 2009-06-10 11:35

Jag skulle snarare sätta en class med display:none på alla element jag inte vill ska synas från början eftersom när man laddar en del javascript så kan de ibland flasha till och först sen körst hide(); vilket är störigt :)

Kolla om du kan ladda ner en demo nånstans på Jquery sidorna där de använder sig av liknande funktion med slideToggle

Althalos 2009-06-11 00:30

Hade nog underlättat att se din markup också... är du säker på att #menu>ul ul inte är lika med (e).parent().children('ul') ?


Alla tider är GMT +2. Klockan är nu 18:47.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson