[英]How to get the second class name from element?
我試圖找出如何檢索類屬性的第二個類名。
<div class="something fooBar"></div>
如何獲得名為“fooBar”的第二個類?
我知道您可以添加、刪除和檢查特定的類,但我找不到如何將第二個類檢索到變量中的文檔。
您可以像這樣使用split
:
alert($('#divID').attr('class').split(' ')[1]);
要獲得所有課程,您可以這樣做:
var classes = $('#divID').attr('class').split(' ');
for(var i=0; i<classes.length; i++){
alert(classes[i]);
}
更多信息:
// alerts "8"
alert($('<div class="something 8"></div>').attr('class').split(' ')[1]);
這是通過引用 div ID 來實現的方法
$(document).ready( function () {
alert($('#yourDivID').attr('class').split(' ')[1]);
});
split 函數將允許您使用指定的分隔符拆分字符串。 這將返回一個分隔值的數組。 在這種情況下,將返回一個類名數組。
拆分其他字符串方法的參考http://www.javascriptkit.com/javatutors/string4.shtml
您應該查看以下用於訪問類的 jQuery 選擇器和函數
選擇器
http://api.jquery.com/class-selector/選擇指定類的dom元素
http://api.jquery.com/has-selector/選擇具有指定選擇器的dom元素
職能
http://api.jquery.com/addClass/向 jQuery 對象添加類的方法
http://api.jquery.com/removeClass/將類移除到 jQuery 對象的方法
http://api.jquery.com/toggleClass/將類切換為 jQuery 對象的方法
http://api.jquery.com/hasClass/檢查 jQuery 對象是否具有指定類的方法
http://api.jquery.com/attr/檢索 jQuery 對象屬性的方法
編輯: 不錯的備忘單
作為替代方案,使用 data-* html 屬性來跟蹤狀態總是更好的做法,例如 $("div.example").data("active")
您可以獲取 class 屬性的值並在空間上對其進行拆分。
secondClass = element.className.split(' ')[1];
這是不正確的。 如果班級分隔了多個空格並且您獲得了第二個班級,則您將獲得空位。 例子:
<div class="something fooBar"></div>
var classes = $('div').attr('class').split(' ');
alert('classes: ' + classes + '; length: ' + classes.length );
// classes: something,,,fooBar; 4
我使用下一個代碼:
/*
* el - element
* num - class number
*/
function getNumClass(el, num) {
var classes = el.split(' ');
var newclasses = [];
var ret;
for (var i = 0; i < classes.length; i++) {
ret = $.trim(classes[i]);
if(ret.length > 0) {
newclasses.length += 1;
newclasses[newclasses.length-1] = ret;
}
}
if (num > newclasses.length) return false;
return newclasses[num - 1];
}
你可以使用你的溢出像
alert($('#divID').attr('class').split(' ')[1]);
然后你可以這樣做
var classes = $('#divID').attr('class').split(' ');
for(var i=0; i<classes.length; i++){
alert(classes[i]);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.