Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] toggle
Fred1485
post
Post #1





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Czytając różne poradniki napotkałem fajna funkcje toggle ale niestety jest ona zdeprecjonowana i tutaj pytanie czy jest cos podobnego w jezyku jquery zeby po kliknięciu zmienila sie np wartosx diva a po nastepnym z powrotem do pierwotnej i tak w kolo?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
session
post
Post #2





Grupa: Zarejestrowani
Postów: 112
Pomógł: 22
Dołączył: 11.04.2010
Skąd: Tarnów

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


Początkowo pisałeś
Cytat
zeby po kliknięciu zmienila sie np wartosx diva a po nastepnym z powrotem do pierwotnej
w takiej sytuacji:
  1. var change='Y';
  2. $("p").click(function(){
  3. var current=$(this).html();
  4. $(this).html(change);
  5. change=current;
  6. });


Możesz również stworzyć własną funkcję jQuery:
  1. jQuery.fn.extend({
  2. toggleHTML: function (s) {
  3. if(typeof change === 'undefined'){
  4. window.change=s;
  5. }
  6. var current=$(this).html();
  7. $(this).html(change);
  8. change=current;
  9. return true;
  10. }
  11. });

Później stosujesz ją sobie jak normalne toggle. Przykład.

Oczywiście nic nie stoi na przezkodzie, żeby zmienne przechowywały nie tyle zawartość jakiegoś elementu, a wartość jakiegoś atrybutu. Zamiast .html() możesz użyć dowolnej innej funkcji, której potrzebujesz.

I wracając funkcja toggle w postaci
Kod
.toggle( handler, handler [, handler ] )
została zdeprecojnowana, natomiast wspomniana funkcja toggle
Kod
.toggle( [duration ] [, complete ] )
jest obecnie jak najbardziej ok, z tym, że odpowiada jedynie za pokazanie/ukrycie elementu. W pozostałych kwestiach odpowiedź już znasz.

Ten post edytował session 23.05.2015, 17:37:12
Go to the top of the page
+Quote Post

Posty w temacie


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: 29.12.2025 - 18:49