DOMTokenList#
DOMTokenList.contains()#
Metoda contains()
zwraca boolowską wartość true
jeśli przekazane słowo znajduje się w uporządkowanym zestawie słów skojarzonym z danym zestawem słów DOM, w przeciwnym razie zwrócona zostanie wartość false
.
Opis działania#
Samo wywołanie i poszczególne jego części najlepiej objaśnić na zapisie składniowym:
var contained = domTokenList.contains(token);
gdzie poszczególne człony oznaczają:
- contained - boolowskie
true
lubfalse
. - domTokenList - zestaw słów DOM będący obiektem kontekstu.
- token - łańcuch znakowy reprezentujący słowo wyszukiwane w uporządkowanym zestawie słów, który nie może być pusty ani zawierać znaków spacji.
Algorytm wywołania metody contains(token)
nie jest skomplikowany. Dla lepszego zrozumienia tematu prezentuję go w całości:
- Jeśli token jest pustym łańcuchem znakowym, to zrzuć wyjątek
"SyntaxError"
. - Jeśli token zawiera jakiekolwiek białe znaki ASCII, to zrzuć wyjątek
"InvalidCharacterError"
. - Zwróć boolowską wartość
true
jeśli token znajduje się w uporządkowanym zestawie słów skojarzonym z obiektem kontekstu, w przeciwnym razie zwróć boolowską wartośćfalse
.
Prosty przykład:
<script>
function showTokens(set){
return Array.prototype.slice.call(set).join(" ");
}
var html = document.documentElement; // referencja do elementu html
document.write(html.classList.constructor); // function DOMTokenList() { [native code] }
document.write("<br>");
document.write(html.classList.length); // 0
document.write("<br>");
document.write(html.classList.contains("Test1")); // false
document.write("<br><br>");
html.className = "Test1 Test2 Test3"; // ustawiamy wartość atrybutu class
document.write(showTokens(html.classList)); // Test1 Test2 Test3
document.write("<br>");
document.write(html.classList.length); // 3
document.write("<br>");
document.write(html.classList.contains("Test1")); // true
document.write("<br>");
document.write(html.classList.contains("TEST1")); // false
document.write("<br><br>");
try{ // Sprawdzamy istnienie pustego łańcucha znakowego w uporządkowanym zestawie słów
html.classList.contains("");
}
catch(e){
document.write("Przekazanie do metody contains() pustego łańcuch znakowego zrzuca błąd:" + "<br>");
document.write(e); // opis zależny od przeglądarki
document.write("<br>");
document.write(e.constructor); // function DOMException() { [native code] }
}
</script>
Metoda contains()
pojawia się dopiero w specyfikacji DOM4.
Składnia Web IDL#
interface DOMTokenList { boolean contains(DOMString token); }
Specyfikacje i inne materiały#
Pasek społecznościowy