Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] Zmiana ID, class
deha21
post
Post #1





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


Potrzebuję zmienić id lub klasę dla jednego obiektu.
  1. <a href='#' class='zgas'><img src='img/lightoff.png' alt='Zgaś/Zaświeć światło'></a>

Chodzi o .zgas aby zmienił się na .zaswieć i potem na odwrót, po kliknięciu w .zaswiec żeby zmienił się na .zgas

Na razie mam taki kod:
[JAVASCRIPT] pobierz, plaintext
  1. $(".zgas").click(function(){$("#expose").expose({api: true}).load(); $(".zgas img").attr("src","img/lighton.png"); $(".zgas").addClass("zaswiec");});
  2. $(".zaswiec").click(function(){$("#expose").expose({api: true}).close(); $(".zaswiec img").attr("src","img/lightoff.png");});
[JAVASCRIPT] pobierz, plaintext


Tutaj dodatkowo zmiana obrazka i expose (obie działają tylko na włączeniu). Pomóżcie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mls
post
Post #2





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

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


[JAVASCRIPT] pobierz, plaintext
  1. $('.zgas').click(function () { $('#expose').expose({api: true}).load(); $(this).find('img').attr('src', 'img/lighton.png').end().removeClass('zgas').addClass('zaswiec'); });
[JAVASCRIPT] pobierz, plaintext


W takich sytuacjach brakuje w jQuery funkcjonalności zamiany jednej klasy na inną jednym poleceniem, co na szczęście można sobie łatwo dodać:
[JAVASCRIPT] pobierz, plaintext
  1. jQuery.fn.replaceClass = function(c1, c2)
  2. {
  3. return $(this).each(function () { return $(this).hasClass(c1) ? $(this).removeClass(c1).addClass(c2) : $(this); });
  4. };
[JAVASCRIPT] pobierz, plaintext


Wówczas zamiast (...).removeClass('zgas').addClass('zaswiec'); wystarczyłoby zapisać (...).replaceClass('zgas', 'zaswiec');.

Ten post edytował mls 16.02.2010, 21:57:49
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: 10.10.2025 - 10:57