之间的区别是什么
$data.find('select:selected');
和
$data.find('select').find(':selected');
假设$data = $('#data')
;
<div id="data">
<div>
<select multiple>
<option value="foo">foo</option>
</select>
</div>
</div>
答案 0 :(得分:7)
$data.find('select').find(':selected');
与
基本相同$data.find('select :selected');
注意descendant selector(select
和:selected
之间的空格)。这会在<{em> :selected
元素中找到的任何select
元素。
另一方面,您的第一个选择器会找到select:selected
,因为:selected
applies to option
elements only而无效。
答案 1 :(得分:0)
我想第一个解析所有DOM一次并获得你的选择器。
第二个解析dom来获取你的选择器并解析检索到的dom对象以找到第二个选择器
结果相同,但它们之间的性能可能会发生变化?