2011-06-19 96 views
1

是否可以检查一个元素中是否存在某个类,如果是,为我的函数创建一个变量?检查类是否存在w/jQuery

<a href="#" id="clickMe"><span class="A open"></span>link</a> 

例如,如果类open存在,我将创建一个varialbe“close”。

$(function() 
{ 
    $('#clickMe').click(function() 
    { 
     // if "open" 
     var myVar = 'close'; 
     // else 
     var myVar = 'open'; 
    }); 
}); 
+3

通过查看jQuery文档来回答这个问题非常容易。转到http://api.jquery.com/并在搜索中输入“class”。答案是列表中的第三项。 –

+0

[Swap class w/jQuery]的可能重复(http://stackoverflow.com/questions/6404198/swap-class-w-jquery) –

回答

7

是,hasClass将做到这一点:

var isOpen = $(this).hasClass('open') ? 'close' : 'open'; 

请注意,您的具体的例子,你需要的东西更接近:

var isOpen = $(this).find('span').hasClass('open') ? 'close' : 'open'; 

因为this你回调将参考A和你的open类是在SPAN


jQuery的也有toggleClass方法可能会或可能 - 不是你要找的内容:

$(this).toggleClass('open'); 

参考:jQuery documentation它通常是相当快找到你要找的内容对于。