Właśnie patrzyłem na wtyczkę przycisku jQueryUI i zauważyłem to
$("button, input:submit, a", ".demo").button();
Nigdy czegoś takiego nie widziałem. Czy to jest jak wielokrotne zaznaczenia w jednym selektorze jQuery?
Drugi argument ( ".demo"
w twoim przykładzie) to kontekst , w zasadzie twój selektor jest ograniczony tylko do elementów potomnych określonego kontekstu :
$(expr, context)
Jest równoważne użyciu find
metody:
$(context).find(expr)
Spójrz na dokumentację funkcji jQuery :
Kontekst selektora
Domyślnie selektory przeprowadzają wyszukiwanie w DOM, zaczynając od katalogu głównego dokumentu. Można jednak podać alternatywny kontekst wyszukiwania, używając opcjonalnego drugiego parametru
$()
funkcji. Na przykład, jeśli w funkcji wywołania zwrotnego chcielibyśmy przeprowadzić wyszukiwanie elementu, możemy ograniczyć to wyszukiwanie:
$('div.foo').click(function() {
$('span', this).addClass('bar');
// it will find span elements that are
// descendants of the clicked element (this)
});
Zwróć także uwagę, że wysyłany przez Ciebie selektor "button, input:submit, a"
nazywa się Selektor wielokrotny i tam możesz określić dowolną liczbę selektorów do połączenia w jeden wynik, po prostu oddzielając je przecinkami.