Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] jQuery - rozwijanie, mały problem
-lukasamd-
post 27.04.2010, 20:22:09
Post #1





Goście







Witam,
mam mały problem z jQuery (tzn. z napisaniem, bo skrypt działa zapewne jak ma działać).

Mam oto takie coś do efektu zwijania / rozwijania:

Kod
  $("a.rozwin").toggle(function(){
    $(this).next(".rozwijanie").show("fast");
  },function(){
    $(this).next(".rozwijanie").hide("fast");  
  });


Niestety nie działa to, jeżeli mam jakiś element pomiędzy "a" a czymś z klasą "rozwijanie", np:

  1. <a href="#" class="rozwin">Testowy link</a>
  2. <span>Testowy tekst</span>
  3. <div class="rozwijanie">
  4. Tekst do zwijania / rozwijania
  5. </div>


Jak zrobić, aby efekt dotyczył następnego, niezależnie od tego co jest pomiędzy?
Sprawdzałem przy zamianie next() na closest() oraz find(), ale w ich wypadku w ogóle nie działa (nawet, gdy jest zaraz po nim).
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post 27.04.2010, 20:25:47
Post #2





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




$(this).nextAll('.rozwijanie')
manual naprawde nie gryzie winksmiley.jpg
Powód edycji: [nospor]:


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-lukasamd-
post 28.04.2010, 09:50:45
Post #3





Goście







No właśnie zaglądałem do manuala, ale nazwa myląca jak dla mnie (wydawało mi się, że uruchomi mi akcję dla wszystkich elementów o klasie rozwijanie) smile.gif
Dzięki.

Ten post edytował lukasamd 28.04.2010, 11:02:10
Go to the top of the page
+Quote Post
nospor
post 28.04.2010, 09:52:30
Post #4





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




Cytat
ale nazwa myląca jak dla mnie
dlatego obok nazw podawany jest opis i przyklad.

Cytat
tongue.gif
Nie pokazuj języka bo ci krowa nasika. Pomijam już fakt, że takie zachowanie jest niekulturalne - udzieliłem ci pomocy a ty mi w zamian pokazujesz język...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-lukasamd-
post 28.04.2010, 11:01:38
Post #5





Goście







Cytat(nospor @ 28.04.2010, 10:52:30 ) *
Nie pokazuj języka bo ci krowa nasika. Pomijam już fakt, że takie zachowanie jest niekulturalne - udzieliłem ci pomocy a ty mi w zamian pokazujesz język...


Przepraszam, nie miałem w celu wstawienie tej emotki aby została tak zinterpretowana. Poprawiłem na chyba bardziej trafną do tej sytuacji.


Mam jeszcze jeden problem, całość nie działa, jeżeli element "rozwin" jest dzieckiem czegoś innego, a element "rozwijanie" jest gdzieś indziej (nie jest w hierarchii na poziomie rodzica "rodzin").
Np.

  1. <ul>
  2. <li><a href="#" class="rozwin">Link do rozwijania</a></li>
  3. <li>Cos innego</li>
  4. <li><a href="adres">Link zewnetrzny</a></li>
  5. </ul>
  6.  
  7. <div class="rozwijanie">
  8. Tekst do rozwijania / zwijania
  9. </div>


Ten post edytował lukasamd 28.04.2010, 11:02:35
Go to the top of the page
+Quote Post
nospor
post 28.04.2010, 11:27:53
Post #6





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




oj.. no bo nextAll dziala w obrebie rodzenstwa. No to jak masz gdzies indziej to uzyj szukania po klasie i juz.
Ewentualnie mozesz sie bawic i dla tego przypadku pojsc do rodzica i w nim szukac po rodzenstwie, czyli po wujkach smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-lukasamd-
post 28.04.2010, 12:29:15
Post #7





Goście







Nie za bardzo wiedziałem jak, więc zrobiłem na sztywno - klik w element o takiej klasie = efekt na elemencie o takiej klasie (bez this). Co prawda gdybym tych drugich miał więcej niż 1, to zadziała na wszystkich, ale póki co nie jest to w planach winksmiley.jpg
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:30