Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][jQuery]
--kamila_k23--
post
Post #1





Goście







Witam
Mam problem z przeszukaniem wszystkich dzieci danego elementu o zadanej nazwie selektora

Mam drzewo zbudowane za pomocą zagnieżdzonych list
  1. <ul id="parent0">
  2. <li>
  3. Witamy
  4. <ul id="parent1">
  5. <li>
  6. Hodowla
  7. <ul id="parent2">
  8. <li>rozród </li>
  9. <li>choroby </li>
  10. </ul>
  11. </li>
  12. <li>
  13. Rasy
  14. <ul id="parent3">
  15. <li>Rasy duże</li>
  16. <li>Rasy średnie</li>
  17. <li>Rasy małe</li>
  18. <li>Miniaturki</li>
  19. </ul>
  20. </li>
  21. <li>
  22. Pomieszczenia
  23. <ul id="parent4">
  24. <li>klatki</li>
  25. <li>wyposażenie</li>
  26. </ul>
  27. </li>
  28. <li>Wystawy</li>
  29. <li>Ogłoszenia</li>
  30. </ul>
  31. </li>
  32. </ul>


W skrypcie chcę ukryć zagniezdzone listy poniżej <ul id="parent1"> czyli chce ukryc liste <ul id="parent2">, <ul id="parent3"> <ul id="parent4">
dodając do nich odpowiednią klasę
jeśli użyję poniższej funkcji to zawija mi wszystko tzn zarówno pozycje <li> (Hodowla, Rasy, Pomieszczenia, Wystawy, Ogłoszenia) oraz <ul> (<ul id="parent2">, <ul id="parent3"> <ul id="parent4">) bedące dziecmi <ul id="parent1">

[JAVASCRIPT] pobierz, plaintext
  1. function ZwinDrzewo()
  2. {
  3. $("#parent1").children().each(function() {
  4. var child = $(this);
  5. child.addClass('artUkryj');
  6. });
  7. };
[JAVASCRIPT] pobierz, plaintext


jeśli dodam do funkcji ograniczenie tylko dla dzieci o znaczniku <ul> to nie działa wogóle
[JAVASCRIPT] pobierz, plaintext
  1. function ZwinDrzewo()
  2. {
  3. $("#parent1").children('ul').each(function() {
  4. var child = $(this);
  5. child.addClass('artUkryj');
  6. });
  7. };
[JAVASCRIPT] pobierz, plaintext


Chce aby efektem zwiniecia drzewa była lista
Witamy
Hodowla,
Rasy,
Pomieszczenia,
Wystawy,
Ogłoszenia


Czy możecie mi wskazać błąd
Z góry dziekuje
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
jakis_login
post
Post #2





Grupa: Zarejestrowani
Postów: 169
Pomógł: 1
Dołączył: 30.09.2010
Skąd: Gdańsk

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


A nie czasami tak:
[JAVASCRIPT] pobierz, plaintext
  1. $("#parent1 li").addClass('artUkryj');
[JAVASCRIPT] pobierz, plaintext


Ten post edytował jakis_login 10.04.2013, 18:15:29
Go to the top of the page
+Quote Post
mortus
post
Post #3





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Raczej
[JAVASCRIPT] pobierz, plaintext
  1. $('#parent1 li ul').addClass('artUkryj');
[JAVASCRIPT] pobierz, plaintext
Go to the top of the page
+Quote Post
--kamila_k23--
post
Post #4





Goście







dziekuje Wam bardzo

jak zwykle szukałam rozwiązania bardziej skomplikowanego a to takie proste (IMG:style_emoticons/default/wink.gif)

A tak na marginesie może ktoś by mi podpowiedział dlaczego funkcja children() nie działa mi jeśli podałam jej parametr children('ul') - tak mnie to męczy (IMG:style_emoticons/default/wink.gif)

Pozdrawiam i jeszcze raz dziekuje.
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
A tak na marginesie może ktoś by mi podpowiedział dlaczego funkcja children() nie działa mi jeśli podałam jej parametr children('ul') - tak mnie to męczy
Skoro tak cię to męczy to czemu nie zajrzysz do dokumentacja, gdzie masz to bardzo dobrze wyjaśnione??

http://api.jquery.com/children/
Cytat
Given a jQuery object that represents a set of DOM elements, the .children() method allows us to search through the children of these elements in the DOM tree and construct a new jQuery object from the matching elements. The .children() method differs from .find() in that .children() only travels a single level down the DOM tree while .find() can traverse down multiple levels to select descendant elements (grandchildren, etc.) as well.
Go to the top of the page
+Quote Post
--kamila_k23--
post
Post #6





Goście







no i wszystko jasne
children() tylko jeden poziom w dół
find() może przechodzić w dół kilka poziomów

Jeszcze raz dziekuje
Pozdrawiam
Go to the top of the page
+Quote Post

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: 8.10.2025 - 10:46