Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] Problem z rozwijaniem wszystkich parentów., Drzewo Kategorii
MMX3
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 9
Dołączył: 26.01.2004
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

Mam mały problem.

Posiadam drzewo kategorii. w tym stylu:
  1. <ul class='ps_lvl_1'>
  2. <li>kat 0</li>
  3. <li>kat 1</li>
  4. <li>kat 2</li>
  5. <li>kat 3
  6. <ul class='ps_lvl_2'>
  7. <li>sub kat 0</li>
  8. <li>sub kat 1
  9. <ul class='ps_lvl_3'>
  10. <li class='current'>sub sub kat 0</li>
  11. </ul>
  12. </li>
  13. <li>sub kat 2</li>
  14. </ul>
  15. </li>

Wszystko działa slideToggle również. Teraz tylko chodzi mi o coś takiego. żeby rozwinąć wszystkich rodziców elementu li z klasą current.

Kombinowałem z takim czymś:
  1. $('ul.ps_lvl_1').children('li.current ul.ps_lvl_2').slideDown('fast');

Oraz
  1. $('ul.ps_lvl_1').next('li.current ').slideDown('fast');


Generalnie pogubiłem się z selektorami... Czy ktoś mógł by na to rzucić trochę świeżego spojżenia, bo ja już wymiękam.

Pozdrawiam,
mmx3
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tiraeth
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Czyli chcesz rozwinąć wszystkie elementy, które prowadzą do .current?

Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <script type="text/javascript" src="jq.js"></script>
        <script type="text/javascript">
            function recursiveHide(sElement) {
                sElement.hide();
                if ( sElement.children().length > 0 ) {
                    recursiveHide(sElement.children());
                }
            }

            $().ready(function(){
                recursiveHide($('.ps_lvl_1'));
                $('.current').show().parents().show();
            });
        </script>
    </head>
    <body>
        <ul class='ps_lvl_1'>
            <li>kat 0</li>
            <li>kat 1</li>
            <li>kat 2</li>
            <li>kat 3
                <ul class='ps_lvl_2'>
                    <li>sub kat 0</li>
                    <li>sub kat 1
                        <ul class='ps_lvl_3'>
                            <li class='current'>sub sub kat 0</li>
                        </ul>
                    </li>
                    <li>sub kat 2</li>
                </ul>
            </li>
        </ul>
    </body>
</html>


No to trzym (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Działa chyba tak jak powinien. Oczywiście bez auto-slideToggle, ale samo slideToggle zadziałać powinno jako dodatek (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

edit: Na poczekaniu powstało jeszcze to: http://dpaste.com/hold/48582/ Uważam, że bardziej chyba o to chodziło (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) W każdym bądź razie inwencja + docs.jquery.com i wszystko będzie git (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Ten post edytował tiraeth 6.05.2008, 22:28:29
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 08:46