You are hereJQuery / JQuery - atrybuty

JQuery - atrybuty


By Piotr Ejsmont - Posted on 19 Grudzień 2008

Atrybuty

Strona to nie tylko elementy na stronie, ale również atrybuty tych elementów. To one wpływają na wygląd strony i zawartość

Jakimi atrybutami możemy manipulować przy pomocy JQuery?

  • Klasą CSS(Class)
  • Kodem HTML
  • Wartością TXT
  • Atrybutami elementów
  • Wartościami (Value)

Klasa CSS

Wygląd strony definiujemy poprzez właściwie zaprojektowaną strukturę dokumentu(elementy) oraz definicje wyglądu elemetów

Od momentu wprowadzenia arkuszy styli CSS można manipulować wyglądem elementów również wykorzystując JavaScript

Do grupy funkcji, które potrafią zmodyfikować atrybuty CSS strony należą:

  • addClass(nazwa klasy) - dodaje do elementu określoną w nawiasie klasę CSS
  • removeClass(nazwa klasy) - wyrzuca z wybranych zapytaniem elemntów klasę o określonej nazwie
  • hasClass(nazwa klasy) - zwraca true, jesli klasa określona w poleceniu jest przypisana do wybranych elementów
  • toggleClass(nazwa klasy) - dodaje klasę do wybranych elementów jeśli element jej nie ma, natomiast wyrzuca ją z elemetu, jeśli dany element ma już podaną klasę przypisaną
Przykład Załóżmy, że struktura dokumentu jest następująca:
<style type="text/css">
.red {
border:1px solid black;
background: red;
color: white;
}
.green {
border:1px solid black;
background: green;
color: white;

}
.blue {
border:1px solid black;
background: blue;
color: white;

}
</style>

<p class="red" >Pierwszy paragraf z przypisaną klasą "red"</p>
<p class="red" >Drugi paragraf z przypisaną klasą "red"</p>
<p class="green" >Trzeci paragraf z przypisaną klasą "green"</p>

Fragment kodu JQuery do przedstawionego przykładu.

$(document).ready(function(){
  $("#toggle").click(function () {
      $('p.red').toggleClass("blue");
   });
	$("#addclass").click(function () {
     $('p.green').addClass("blue");
   });
	$("#removeclass").click(function () {
    $('p.green').removeClass("blue");
  });
	$("#hasclass").click(function () {
		if ($('p.green').hasClass("blue")==true) {
			alert ('Trzeci element ma przypisaną klasę blue');
		}else{
			alert ('Trzeci element nie ma przypisamej klsy blue');
		};
  });
});

Pierwszy paragraf z przypisaną klasą "red"

Drugi paragraf z przypisaną klasą "red"

Trzeci paragraf z przypisaną klasą "green"

Kliknij, aby dodać klasę "blue" elementom p, które mają klasę "red". Ponowne klikinięcie spowoduje odebranie nadanej wcześniej klasy "blue"

Kliknij, aby przypisać klasę "blue" trzeciemu paragrafowi

Kliknij, aby zabrać klasę "blue" przypisaną do trzeciego elementu. Kliknij najpierw drugi klawisz, aby przisać klasę "blue"

Kliknij, aby przetestować, czy element trzeci ma przypisaną klasę "blue". Użyj klawiszy addClass oraz removeClass, przed sprawdzeniem istnienia klasy, aby uzyskać właściwe komunikaty.

Jaki może być do tego komentarz? Myslę, że przykłady są czytelne, dlatego nie będę ich tu specjalnie opisywał. To właśnie siła JQuery, że przy pomocy niewielu linijek kodu można uzyskać całkiem ciekawe efekty.

Operacje na klasach, a właściwie atrybutach CSS były wykorzystywane przy okazji testowania selektorów.

HTML

Jakie funkcje służą do manipulacji kodem HTML?
  • html() - pobiera kod HTML dla pierwszego wskazanego elementu (innerHTML)
  • html(val) - ustawia dla wybranych elementów kod HTML zdefiniowany w "val"

Ciąg dalszy (związany z atrybtami) nastąpi....wkrótce


Tags |

tags in Klasy PHP



Dobra książka

Napisz artykuł

A może masz chęć napisać artykuł dot. PHP lub programowania obiektowego w PHP i tym samym pomóc innym? Zachęcam do rejestrowania się w serwisie i publikowania artykułów!

Zaproszenie

Zapraszam wszystkich do publikowania klas w moim serwisie. Oczywiście chodzi tylko o klasy PHP udostępniane internautom bezpłatnie (np. licencja freeware, GPL)z krótkim manualem, opisem metod, itp.
Zostań Guru dla innych!

Więcej na temat

Stat

Klasy PHP newsletter

Aktualności ze strony na skrzynkę pocztową!

Polecamy