o identyfikatorze alertBox, możemy użyć
następującego kodu:
$( #alertBox ).removeClass( highlight );
Przełączenie klasy z wybranego elementu toggleClass()
Funkcja dodaje klasę, jeżeli jej nie ma i usuwa jeżeli jest. Jest wykorzystywana do
programowania akcji typu włącz wyłącz (przykłady pózniej).
Wczytywanie i modyfikowanie właściwości CSS
Aby odczytać aktualną wartości właściwości CSS należy przekazać jej nazwę do funkcji
css():
var bgColor = $( #main ).css( background-color );
Funkcja przypisze zmiennej bgColor łańcuch znaków określający kolor tła element. Zwróci
wartość transparent jeśli nie ma ustalonego koloru lub kolor zapisany jako wartość RGB np.
rgb( 255, 255, 0)
Funkcja css() umożliwia również ustawienie wartości własności CSS elementu. W tym celu
należy jej przekazać dwa argumenty: nazwę właściwości CSS i jej wartość:
$( body ).css( font-size , 200% );
Możliwa jest zmiana wielu właściwości CSS. Aby to uczynić należy do funkcji css() przekazać
listę właściwości i ich wartości zawartą w nawiasy klamrowe:
$( #highlightedDIV ).css({
background-color : #FF0000 ,
border : 2px solid #FE0037
});
Wczytywanie, ustawianie atrybutów HTML
Możliwe jest zarządzanie atrybutami w kodzie HTML.
Funkcja attr() pozwala pobrać wartość określonego atrybutu HTML.
Aby sprawdzić, na jaki plik graficzny wskazuje dany tag
, należy przekazać do
wspomnianej funkcji łańcuch znaków src
var imageFile = $( #banner img ).attr( src );
Aby ustawić wartość atrybutu, należy przkazać do funkcji attr() także drugi argument. Jeśli
chcesz wyświetlić nowy rysunek, możesz zmienić właściwość src znaczniak
:
$( #banner img ).attr( src , images/newImage.png );
Można także usunąć atrybut ze znacznika. Służy do tego funkcja removeAttr():
$( body ).removeAttr( bgColor );
Obsługa wszystkich pobranych elementów.
Przechodzenie w pętli po zbiorze znalezionych elementów i wykonywanie dla nich serii tych
samych zadań to standardowa operacja (pętle automatyczne). W jQuery można ją
przeprowadzić za pomocą funkcji .each().
$( selektor ).each();
Aby użyć funkcji each(), należy przekazać do niej argument specjalnego rodzaju tzw.
funkcję anonimową, która zawiera opis czynności realizowanych dla każdego znalezionego
elementu. Funkcja anonimowa nie posiada unikalnej nazwy i ma postać:
function(){
// kod funkcji
}
Jej kod należy umieścić jako argument funkcji .each():
$( selektor ).each(
function(){
// kod funkcji
}
);
Może to skrótowo wyglądać tak:
$( selektor ).each( function(){
// kod funkcji
});
Słowo kluczowe this
W czasie korzystania z funkcji .each() programista chce móc pobierać i ustawiać atrybuty
poszczególnych elementów. Dostęp do aktualnie przetwarzanego elementu zapewnia słowo
kluczowe this. Przy pierwszym uruchomieniu pętli słowo this odpowiada pierwszemu
elementowi kolekcji, przy drugim uruchomieniu drugiemu itd.
W bibliotece jQuery ma ono konstrukcję:
$(this)
Przykład tworzenia listy odnośników zewnętrznych w ramce z bibliografią na dole strony.
Strona zawiera znacznik
przeznaczony na odnośniki zewnętrzne:
Strony wymienione w artykule
Pierwszy krok to pobranie wszystkich odnośników zewnętrznych:
$( [href^=http://] )
Aby przejść po pętli dla wszystkich odnośników, używamy funkcji each():
$( [href^=http://] ).each();
Następnie należy dodać funkcję anonimową:
$( [href^=http://] ).each( function(){
});
Przy każdym przetworzeniu pętli musimy mieć dostęp do atualnie przetwarzaniego elementu.
Umożliwia to konstrukcjia $(this):
$( [href^=http://] ).each( function(){
var extLink = $(this).attr( href );
});
Następnie wystarczy dodać nowy element listy do znacznika