我想检查一个“特定”类是否应用于div内的跨度。所以我试过
$('#div').click(function() {
console.log($(this).find('.myImgClass').length); // returns 0-if not found
// 1 if found
}
<div>
<span class="myImgClass"></span>
</div>
这是正确的方法吗?
答案 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);
});
如果只需要该类的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);
});