例如:
<div class="home current">home</div>
当我使用$(this).attr("class")
时,它只是返回“家庭当前”。我只想获得“家”属性。我怎样才能做到这一点?
例如:
<div class="home current">home</div>
当我使用$(this).attr("class")
时,它只是返回“家庭当前”。我只想获得“家”属性。我怎样才能做到这一点?
如果你知道类名并想检查一个元素是否有它,你可以使用.hasClass()
// will return true if the element has that class applied to it
$(elem).hasClass('home');
另一方面,如果您希望将每个类分别应用于一个元素,则可以按空格拆分并迭代:
var classes = $(elem).attr('class').split(' ');
for(var i=0; i<classes.length; i++) {
classes[i]; // each class name
}
该class
属性返回分配给元素的 css 类的空格分隔列表,使用字符串上的方法将其转换为数组split
,并检索第一个,使用 [0] 索引器,如下所示:
var firstClass = $(this).attr('class').split(' ')[0]
是否有特定原因需要拉取课程列表。如果您知道要查找的类并且只需要检查该对象是否具有类主页,则可以执行以下操作:
$(this).hasClass("home");
否则,您可以拆分结果并检查您需要的任何类。
var classAttr = $(this).attr("class");
var classes = classAttr.split(" ");
看来您需要元素的主要类。
var primaryClass= $(this).attr('class').split(' ')[0].
请记住,如果没有应用类,则在您使用它时,此行可能会导致异常。
var allClass= $(this).attr("class");
var class = allClass.replace("current", "");
如果您只有“当前”作为附加类,这将起作用