![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 2.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
witam
mamy sobie taka strukture strony:
po kliknieciu diva o klasie klik, odkrywa sie tresc diva o klasie wiecej. div o klasie wiecej zawiera element np h2. jak zrobic, zeby po kliknieciu elementu h2 "klik2" zjezdzala tresc diva o klasie wiecej2 ? czyli innymi slowy jak zagniezdzac dzialanie toggla ? pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
mając nazwy class rodziców/potomków przeszukujesz odpowiednią gałąź drzewa DOM.
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 2.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
noo robisz to dokładnie w ten sam sposób:
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 2.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
noo robisz to dokładnie w ten sam sposób:
no wlasnie tak probowalem i nie chce dzialac
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Dlatego, że h2 jest zagnieżdżony w div. Zauważ, że w Twoim przykładzie masz klasę klik i od razu odkrywasz diva będącego za nim. Tymczasem w 2 przypadku klikasz w h2, które jest wewnątrz jakiegoś div. Musisz więc nie tylko wskazać następny div, ale wpierw "powiedzieć", że to div względem rodzica h2. Czyli najprościej rzecz ujmując struktura typu $this -> rodzic -> next.
W wywołaniu $("ul#lista li div.wiecej h2").click( function() { $(this).TUTAJ.next("div.wiecej2").toggle(); }); musisz więc w TUTAJ zrobić przejście do węzła rodzica i skrypt zadziała. Popatrz na coś takiego jak parent() ![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 2.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
Dlatego, że h2 jest zagnieżdżony w div. Zauważ, że w Twoim przykładzie masz klasę klik i od razu odkrywasz diva będącego za nim. Tymczasem w 2 przypadku klikasz w h2, które jest wewnątrz jakiegoś div. Musisz więc nie tylko wskazać następny div, ale wpierw "powiedzieć", że to div względem rodzica h2. Czyli najprościej rzecz ujmując struktura typu $this -> rodzic -> next. W wywołaniu $("ul#lista li div.wiecej h2").click( function() { $(this).TUTAJ.next("div.wiecej2").toggle(); }); musisz więc w TUTAJ zrobić przejście do węzła rodzica i skrypt zadziała. Popatrz na coś takiego jak parent() ![]() dzieki, udalo sie ![]() pozdrawiam. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 20.07.2025 - 01:51 |