用jQuery替换一个类名与另一个类名的所有匹配项

用jQuery替换一个类名与另一个类名的所有匹配项,jquery,addclass,removeclass,Jquery,Addclass,Removeclass,假设我有一个ID为“菜单”的UL。如果我想找到该菜单中所有具有“foo”类的列表项,请删除“foo”类并添加“bar”类,我将如何使用jQuery实现这一点?这是我到目前为止得到的。我的语法有点错误 $('#menu').children().hasClass('foo').removeClass('foo').addClass('bar'); 另外,如果列表项还没有“foo”类,那么我也不希望它有“bar”类。只需使用选择器查询选择所有需要的项: $("#menu > .foo").r

假设我有一个ID为“菜单”的UL。如果我想找到该菜单中所有具有“foo”类的列表项,请删除“foo”类并添加“bar”类,我将如何使用jQuery实现这一点?这是我到目前为止得到的。我的语法有点错误

$('#menu').children().hasClass('foo').removeClass('foo').addClass('bar');

另外,如果列表项还没有“foo”类,那么我也不希望它有“bar”类。

只需使用选择器查询选择所有需要的项:

$("#menu > .foo").removeClass("foo").addClass("bar");
#menu>.foo
选择具有类的
#menu
的所有直接子级。foo
.hasClass()
返回布尔值

$('#menu > .foo').removeClass('foo').addClass('bar');
或尝试

$('#menu > .foo').toggleClass('foo bar');