javascript - .attr ('class' ) 返回多个类名,如何选择我要使用的那个?

标签 javascript jquery jquery-selectors

当我使用 jQuery .attr('class') 时,我得到了 'class1 class2 class3',它们应该是单独的类,我如何选择其中一个类,例如我想更改 .css在 class1 上,我将如何遍历返回的类名,这些是我必须拆分的字符串,还是这些对象?谢谢!

顺便说一句, 我的 html 看起来像这样:

<td class ="class1 class2 class3">

我通过在返回的 .attr('class') 上使用 .spilt 让它工作。我的目标是获得第二堂课,并在其上做一些 .css() 。

最佳答案

classclassName 属性在单个字符串中返回以空格分隔的类名列表。如果您想对该属性进行手动操作,则必须自己手动将字符串解析为生成的类名。它是一个字符串,而不是单个对象。

现在,幸运的是,当您使用 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/

相关文章:

javascript - 使用 JQuery removeClass() 删除除一个类之外的所有类

javascript - 带有加号的 jQuery

javascript - Nodejs 未部署在 heroku 上 - node-pre-gyp install --fallback-to-build

javascript - 悬停同一列表中的其他链接时移动水平背景线

JavaScript 数据未附加到数组

javascript - 如何以最简单的方式在 jQuery 中进行调试?

javascript - 如何检测一个元素位于另一个元素之上

javascript - Ajax防止默认并在当前页面提交表单

javascript - 如何获取选中复选框的数量(计数)?

javascript - 未捕获的类型错误 : Object #<an Object> has no method 'click'