check元素里面有一些使用jquery的元素

时间:2015-03-23 01:48:43

标签: javascript jquery

你可以像if($('.div').find('.someelem').length == 0 ..那样检查div中是否有.someelem,

但如果我想检查任何元素怎么办?我不知道里面的课程是什么。

<div>
</div>

^检查上面的div是否包含某些内容。

1 个答案:

答案 0 :(得分:2)

更快的方法是使用.find()因为它不会触发某些昂贵的 jQuery的Sizzle Selector Library:

if( !$(".div").find(">")[0] ){
    // Maybe has text, but has absolutely no children Elements.
}

如果您想更加具体地了解您的选择器,而不是使用">"任何直接孩子),您可以使用"div"来限制您的搜索到{ {1}}仅元素。


您也可以使用&#34;如果为空&#34;

DIV

$(".div:empty").someMethodYouWant(); // Do some stuff on empty elements. (Really empty)

请注意,如果您只有一些文字(意味着它不为空),上述内容将会产生if( $(".div").is(":empty") ){ // Has no elements and no text }

如果您更愿意去寻找直接的孩子false元素

>

或者:

if( !$(".div:has(>)").length ){
    // Maybe has text, but has absolutely no children Elements.
}

甚至更简单:

if( !$(".div:has(>)")[0] ){
    // Maybe has text, but has absolutely no children Elements.
}