2009-10-08 74 views

回答

102

刚刚得到的类属性:

var div1Class = $('#div1').attr('class'); 

<div id="div1" class="accordion accordion_active"> 

要检查上述DIV包含在它

var a = ("#div1").attr('class'); 
console.log(a); 

控制台输出

accordion accordion_active 
+0

这真的是一个属性? 'className' ..?是不是'className'只用于JavaScript? 'document.getElementById(“div1”)。className' – peirix 2009-10-08 10:15:12

+2

现在看到,根据jQuery文档建议使用'className',这样它就不会干扰JavaScript中的保留字'class' ... – peirix 2009-10-08 10:29:07

+2

** NOTE :**在jQuery 1.6中,它们*最后*修正了'attr'方法,现在您应该使用'$(...)。attr('class');','className'只是一个访问器属性,它映射到DOM元素的''''属性 - 没有'className'属性,它只是一个属性。 – CMS 2011-07-13 21:42:29

2
$("#div1").attr("class") 
11
$('#div1').attr('class') 

将返回类的字符串。把它变成类名称的数组

var classNames = $('#div1').attr('class').split(' '); 
+2

+ 1'd。 ($('#div1')。attr('class')||'').split('')更安全。 – user420667 2014-09-17 17:25:13

1
var classname=$('#div1').attr('class') 
0

试试这个

$( “#DIV1”)。ATTR( “类”)

16

只需通过

var divClass = $("#div1").attr("class") 

你可以做一些其他的东西来操纵元素的类

$("#div1").addClass("foo"); // add class 'foo' to div1 
$("#div1").removeClass("foo"); // remove class 'foo' from div1 
$("#div1").toggleClass("foo"); // toggle class 'foo' 
1
var className=$('selector').attr('class'); 

var className=$(this).attr('class'); 

当前元素

7

的类名从现在起是更好地使用,而不是.attr()之一.prop()函数。

这里jQuery的文档:

在jQuery 1.6的,所述.attr()方法返回未定义对于尚未被设置的属性 。另外,.attr()不应该用于 纯文本对象,数组,窗口或文档。要检索并更改DOM属性,请使用.prop()方法。

var div1Class = $('#div1').prop('class'); 
1

的addClass方法jQuery中内置了一个currentClass。你可以使用它的函数调用里面。像这样:

<div>First div</div> 
<div class="red">Second div</div> 
<div>Third div</div> 
<div>Fourth div</div> 

<script> 
    $("div").addClass(function(index, currentClass) { 
    var addedClass; 
    if (currentClass === "red") { 
     addedClass = "green"; } 
    return addedClass; 
    }); 
</script> 
0
<div id="my_id" class="my_class"></div> 

如果这是第一个div然后解决它像这样:

document.write("div CSS class: " + document.getElementsByTagName('div')[0].className); 

或者做到这一点:

document.write("alternative way: " + document.getElementById('my_id').className); 

它产生以下结果:

div CSS class: my_class 
alternative way: my_class 
0

,如果你想寻找的是有超过1类试试这一个div:

HTML:

<div class="class1 class2 class3" id="myDiv"> 

的Jquery:

var check = $("#myDiv").hasClass("class2").toString(); 

输出继电器:

true

相关问题