我有许多带有以下标记的元素:
<div id="div1" data-category="mycategory" data-feature="myfeature"></div> <div id="div2" data-category="anothercategory" data-feature="myfeature"></div> <div id="div3" data-category="mycategory" data-feature="myfeature"></div> <div id="div4" data-category="mycategory" data-feature="anotherfeature"></div>
两个引用这些的jQuery选择器:
$cats = $('div[data-category="mycategory"]'); $features = $('div[data-features="myfeature"]');
如何将这两个选择器合并为一个BOTH引用为真的选择器?我想最终得到一个只包含div 1和3的选择器但是使用已经存在的$cats和$features – 而不是基于标记构建另一个选择器
解决方法
联盟:
$('div[data-category="mycategory"],div[data-features="myfeature"]')...
这将获得[data-category]属性为mycategory或[data-features]属性为myfeature的所有div.
这可以通过多个选择器完成,如$one.add($two)
路口:
$('div[data-category="mycategory"][data-features="myfeature"]')...
这将获得所有div,其中[data-category]属性是mycategory,[data-features]属性是myfeature.
这可以通过多个选择器完成,如$one.filter($two)