Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Zwjianie lub rozwjianie treści.
Forum PHP.pl > Forum > Przedszkole
Croos22
Dobry.


Przy użyciu jquery funkcji toggle uzyskałem zwijanie i rozwijanie. Mam zamiar wykorzystać to do wyświetlania rejestracji bądź logowania zatem jedno albo drugie.
Funkcja toggle przyjmuje dwa argumenty pierwszy z nich to funkcja wykonywana podczas nieparzystego kliknięcia, drugi funkcja wykonywana podczas parzystego kliknięcia. Czy zmierzam w dobrym kierunku?

Oto dwa skrypty które mam zamiar złączyć w jeden:

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(
  2. function(){
  3. $("#logowanie").click(
  4. function(){
  5. $("#logowanie_all").toggle();
  6. });
  7. });
  8.  
  9. $(document).ready(
  10. function(){
  11. $("#rejestracja").click(
  12. function(){
  13. $("#rejestracja_all").toggle();
  14. });
  15. });
[JAVASCRIPT] pobierz, plaintext
wolacinio
no dobrze ale nie potrzebnie tyle kodu.
Nie lepiej zrobić na jednej funkcji ? raczej jak będzie logowanie to nie będzie rejestracji i na odwrót.

[JAVASCRIPT] pobierz, plaintext
  1.  
  2. $(document).ready(
  3. function(){
  4. $("#odnosnik").click(
  5. function(){
  6. $("#pasek").toggle();
  7. return true;
  8. });
  9. });
  10.  
[JAVASCRIPT] pobierz, plaintext
Croos22
Jak to nie będzie potrzebna? Wchodząc na stronę odwiedzający zobaczą dwa linki, które po kliknięciu rozwiną treść dla jednego i drugiego.
buliq
Jeden z formularzy jest domyślnie widoczny? Czy oba są ukryte i skrypt pokazuje dopiero pierwszy z nich?
Croos22
Oba ukryte.
buliq
to dajesz tak:

[JAVASCRIPT] pobierz, plaintext
  1.  
  2. $(document).ready(
  3. function(){
  4. var h=0;
  5. $("#logowanie").click(
  6. function(){
  7. $("#logowanie_all").toggle();
  8. if (h!=0)
  9. $("#rejestracja_all").toggle();
  10. h=1;
  11. });
  12.  
  13.  
  14. $("#rejestracja").click(
  15. function(){
  16. $("#rejestracja_all").toggle();
  17. if (h!=0)
  18. $("#logowanie_all").toggle();
  19. h=1;
  20. });
  21.  
  22. });
  23.  
[JAVASCRIPT] pobierz, plaintext


Wydaje się logiczne ale nie testowałem. Zasada taka: jeżeli wyświetla pierwszy raz to h=0, jeżeli drugi i następny raz h=1 więc schowaj drugi form. Można jescze sprawdzać czy drugi jest widoczny przy pomocy .is(':visible'); i jeżeli jest widoczny to chowamy.

Mam nadzieję iż pomogłem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.