Я пытаюсь удалить элемент из DOM, если он не содержит никаких элементов.
Вот что я пробовал:
var numChildren = 0; $("#messages").children().each(function () { numChildren += 1; }); if (numChildren <= 0) { $("#messages").slideUp("normal", function () { $(this).remove(); }); }
var messages = $('#messages'); if (messages.children().length < 1) { messages.slideUp('normal', function () { $(this).remove(); }); }
Не забывайте, однако, что это удалит div messages из DOM.
messages
Вы также можете просто использовать $("#messages:empty").remove();, хотя вам нужно будет обрезать пробел, чтобы сделать элемент действительно пустым.
$("#messages:empty").remove();