1

我有这个功能:

$containing = jQuery('#test a').filter(function(){
    return jQuery(this).text().substring(0,2) == "Ba";
});

if ($containing.length > 0) {
    $containing.first().addClass('testtt');
}

这会将它添加class到它找到的第一个锚点,但这不是我想要的。我想给所有anchors包含 Ba 的课程...我尝试用 替换firsteach但什么也没发生。有人可以帮我吗?

4

2 回答 2

3

只需 remove .first(),然后它将应用于 jQuery 数组中的所有对象,而不仅仅是第一个。

$containing = jQuery('#test a').filter(function(){
    return jQuery(this).text().substring(0,2) == "Ba";
});

if ($containing.length > 0) {
    $containing.addClass('testtt');
}
于 2013-07-30T08:49:48.717 回答
2

只需删除.first(). jQuery 中的链接允许将大多数函数应用于所有选定的元素。

$containing = jQuery('#test a').filter(function(){
    return jQuery(this).text().substring(0,2) == "Ba";
});

if ($containing.length > 0) {
    $containing.addClass('testtt');
}
于 2013-07-30T08:50:24.180 回答