根据索引找到以下元素。
var listDiv = $( "div[class*='item-title']" ).filter(function( index ) {
return index === curActiveItem
});
在这种情况下,似乎jQuery将继续搜索所选元素,因为索引已传入过滤器。
有没有办法使用":第一个"使用此示例,还是有更有效的方法来过滤项目?
答案 0 :(得分:1)
如果您知道索引,那么您可以使用.eq
获取该索引处的元素:
var listDiv = $( "div[class*='item-title']" ).eq(curActiveItem);
可以使用jQuery的过滤器,以便在找到第一个元素时停止搜索吗?
没有。但你可以用.each
:
var listDiv = $();
$( "div[class*='item-title']" ).each(function() {
if (someCondition) {
listDiv = $(this);
return false;
}
});
或使用Array#some
:
$($( "div[class*='item-title']" ).get().some(function(element) {
return someCondition;
}));