Odpowiedzi:
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 findmetody:
$(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.