2011-06-12 199 views
12

我想從DOM中刪除一個元素,如果它不包含任何元素。檢查元素是否有孩子?

這裏是我的嘗試:

var numChildren = 0; 
$("#messages").children().each(function() { 
    numChildren += 1; 
}); 
if (numChildren <= 0) { 
    $("#messages").slideUp("normal", function() { $(this).remove(); }); 
} 

回答

32
var messages = $('#messages'); 
if (messages.children().length < 1) { 
    messages.slideUp('normal', function() { $(this).remove(); }); 
}  

不要忘記,雖然這樣可以消除從DOM messages股利。

+0

謝謝你的回答,它真的幫了我很多@達林季米特洛夫! – 2015-04-03 12:36:42

1

您也可以簡單地使用$("#messages:empty").remove();,但您需要修整空格以使元素真空。