0

我有一些动态解析内容的块。我需要为它更改一些样式,但如果有一些 html。我的问题:是否有可能使用 jQuery 实时检查某些元素在指定时刻具有 html 并设置一些操作(例如,如果它是空的)?谢谢一些信息。

我的代码:

if ($('.degrees').live().html === ("")){
    $('.block').fadeOut('slow');
}
4

4 回答 4

2

试试这个:

检测为空并更改其 html 的 div:

$('.degrees:empty').on('DOMSubtreeModified',function(){
    //...
});

检测每个 html 更改

$('.degrees').on('DOMSubtreeModified',function(){
    if($(this).is(':empty')) // check if it became empty ..
});
于 2012-08-20T23:42:17.467 回答
0

你可以这样检查:

if($('.degrees').html().length > 0){
    // element has children
} else {
    // no children
}
于 2012-08-20T23:12:14.533 回答
0

您可以像这样检查元素是否为空:

if ($('.degrees').is(':empty')){
    $('.block').fadeOut('slow');
}

但它仅在您进行检查时才有效,而不是对未来的元素,这样做您必须使用间隔定期检查它,这通常不是一个好主意。

于 2012-08-20T23:12:27.903 回答
0

您可以检查子元素:

var $main = $('.degrees'),
    $child = $('.block');

if($main.children().length < 0) {
    $child.fadeOut(500);
}
于 2012-08-20T23:32:23.010 回答