当我使用 jQuery .attr('class') 时,我得到了 'class1 class2 class3',它们应该是单独的类,我如何选择其中一个类,例如我想更改 .css在 class1 上,我将如何遍历返回的类名,这些是我必须拆分的字符串,还是这些对象?谢谢!
顺便说一句, 我的 html 看起来像这样:
<td class ="class1 class2 class3">
我通过在返回的 .attr('class') 上使用 .spilt 让它工作。我的目标是获得第二堂课,并在其上做一些 .css() 。
最佳答案
class
或 className
属性在单个字符串中返回以空格分隔的类名列表。如果您想对该属性进行手动操作,则必须自己手动将字符串解析为生成的类名。它是一个字符串,而不是单个对象。
现在,幸运的是,当您使用 jQuery 时,您很少需要自己这样做。如果您想添加、删除或更改单个类名,您可以使用这些 jQuery 方法的某种组合,它们将为您完成所有解析:
.hasClass(classname)
.replaceClass(oldName, newName)
.removeClass(classname)
.addClass(classname)
要删除一个类并添加一个单独的类,像这样将两个函数链接在一起的情况并不少见。
x$.removeClass("foo").addClass("bar");
如果您真的只想在选择器中使用类名,那么您根本不必担心对象上还有多少其他类名,因为内置于 jQuery 中的选择器库会处理所有这些为你。例如:
$(".myClassName").css("color", "red");
将在 className 属性的任何位置找到所有具有 myClassName
的对象,并将指定的 CSS 应用于这些对象。
关于javascript - .attr ('class' ) 返回多个类名,如何选择我要使用的那个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10343479/