Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Tekst zwiń się nie chowa
djtomaszq
post 30.12.2015, 10:53:32
Post #1





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Jak kliknę pierwszy raz na selektor rozwin to rozwija i zmienia tekst na "zwiń" ale po drugim kliknieciu jak zawija diva to nie zmienia slektoru na "Rozwiń"...

  1. $("#2_kolejka").click(function()
  2. {
  3. $('.zaw_belka_2').toggle(function(){
  4. $(this).nextAll().show();
  5. $('#rozwin').text('Rozwiń >>');
  6. return false;
  7. },
  8. function(){
  9. $('#rozwin').text('Zwiń <<');
  10. $(this).nextAll().hide();
  11. return false;
  12. });
  13. });
Go to the top of the page
+Quote Post
werdan
post 30.12.2015, 12:44:12
Post #2





Grupa: Zarejestrowani
Postów: 354
Pomógł: 100
Dołączył: 14.11.2013
Skąd: Płock

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


Funkcja 'click' w jQuery przyjmuje tylko jedną funkcję jako parametr. Tutaj wykonuje się jedynie ta druga funkcja.


Zobacz przykład:

https://jsfiddle.net/Ljr3om3v/

Na konsoli masz rezultat.

Musisz dać tutaj jakiś warunek, jeśli zamknięte -> otwierasz i odwrotnie.
Go to the top of the page
+Quote Post
djtomaszq
post 31.12.2015, 10:12:05
Post #3





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


W tą stronę? ale też tylko rozwiń pokazuje

  1. $("#2_kolejka").click(function()
  2. {
  3. $("#2_kolejka").each(function() {
  4. if ($(this).css("visibility") == "hidden") {
  5. $('#rozwin').text('Rozwiń >>');
  6. } else {
  7. $('#rozwin').text('Zwiń <<');
  8. }
  9. });
  10.  
  11. $('.zaw_belka_2').toggle(function(){
  12. $(this).nextAll().show();
  13. return false;
  14. },
  15. function(){
  16. $(this).nextAll().hide();
  17. return false;
  18. });
  19. });
Go to the top of the page
+Quote Post
b4rt3kk
post 31.12.2015, 13:27:42
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(djtomaszq @ 31.12.2015, 10:12:05 ) *
W tą stronę? ale też tylko rozwiń pokazuje

  1. $("#2_kolejka").click(function()
  2. {
  3. $("#2_kolejka").each(function() {
  4. if ($(this).css("visibility") == "hidden") {
  5. $('#rozwin').text('Rozwiń >>');
  6. } else {
  7. $('#rozwin').text('Zwiń <<');
  8. }
  9. });
  10.  
  11. $('.zaw_belka_2').toggle(function(){
  12. $(this).nextAll().show();
  13. return false;
  14. },
  15. function(){
  16. $(this).nextAll().hide();
  17. return false;
  18. });
  19. });



A na co Ci to each? Skoro w selektorze podajesz id elementu, to zapewne jest tylko jeden taki na stronie (przynajmniej powinien).

To się sprawdzi dla jednego elementu:
https://jsfiddle.net/sevc7asb/


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
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: 24.07.2025 - 12:52