2012-12-14 142 views
1

我偶然发现了这种选择器的形式。注意引号,它的两个属性。JQuery选择多个属性

$('#item1','#item2') 

它似乎只返回第一个元素,它不同于$('#item1,#item2')的结果。我无法找到任何有关这件事的文件。有人可以解释这个或链接到文档的例子请

回答

4

这就是所谓的背景下,这是一样的find(),所以这样的:

$('#item1','#item2') 

就等于:

$('#item2').find('#item1'); 

换句话说,它搜索里面#item2了ID为#item1

元素要选择具有ID的#item1#item2这两个元素,你会怎么做:

$('#item1, #item2') 

通知报价的差异。

+0

基本上,它意味着在#item2''搜索#ITEM1工作。 –

+0

@Derek - 是的,搜索与#'item1'匹配的#item2'的子项。 – adeneo

1

您可以指定任意数量的选择器组合成一个单一的结果。
这个多表达组合子是一种选择不同元素的有效方法。

multiple-selector
multiple-selector-2

var list = $("div,p,span").map(function() { 
    return this.tagName; 
}).get().join(", "); 
$("b").append(document.createTextNode(list)); 
3

选择在Jquery的$(PARAM)支持单字符串参数,然后将其分割参数串,然后执行用于选择元件..

$('#item1','#item2') //treat first one param 

$('#item1,#item2') //treat one param and splits passed string and will select both