如何查找是否应用了课程?

时间:2012-04-04 08:38:16

标签: jquery

我想检查一个“特定”类是否应用于div内的跨度。所以我试过

$('#div').click(function() {
     console.log($(this).find('.myImgClass').length);  // returns 0-if not found
                                                      // 1 if found
}

HTML

<div>
 <span class="myImgClass"></span>
</div>

这是正确的方法吗?

5 个答案:

答案 0 :(得分:2)

使用jQuery.hasClass()方法执行此操作:

var hasMyImgClassClass = $("span").hasClass("myImgClass");

答案 1 :(得分:1)

您的选择器错误,div而不是#div

$('div').click(function() {
   console.log($(this).has('.myImgClass').length);
});

答案 2 :(得分:1)

$("div >span").click(function(){
 alert($(this).hasClass('myImgClass')) 
});

答案 3 :(得分:1)

这应该可以解决问题,

$('div').click(function() {
  alert("Spans with .myImgClass: " + $(this).children('span.myImgClass').length);
});

Example on JSFiddle.net

如果需要该类的div,那么:

$('div > span.myImgClass').click(function() {
  var theSpan = $(this);
  var theDiv = theSpan.parent();
  alert("Div with Span with .myImgClass.");
});

答案 4 :(得分:0)

看起来正确(除了div选择器),但如果你想专门检查跨度,请改为:

$('div').click(function() {
     console.log($(this).find('span.myImgClass').length);  
});