Я пытаюсь удалить конкретный div, если отдельный div пуст. Вот что я использую:
$(document).ready(function () {
if ('#leftmenu:empty') {
$('#menuTitleWrapper').remove();
$('#middlemenu').css({ 'right': '0', 'position': 'absolute' });
$('#PageContent').css({ 'top': '30px', 'position': 'relative' });
}
});
Я думаю, что это близко, но я не могу понять, как написать код для проверки того, что #leftmenu пусто. Любая помощь приветствуется!
trim()
идеально подходит для меня. Пришлось удалить столбец в Sharepoint, который добавлял какое-то белое пространство, в которомtrim()
находит. Спасибо..text()
потому что у вас может быть какой-то комментарий в «пустом» контейнере, и, следовательно, ни то,trim
ни другое:empty
работать не будут. Спасибо.html()
если контейнер имеет очень длинный HTML-контент?Это зависит от того, что вы подразумеваете под пустым.
Чтобы проверить, нет ли текста (это позволяет дочерним элементам, которые сами по себе пусты):
Чтобы проверить, нет ли дочерних элементов или текста:
Или,
источник
Если вам нужна быстрая демонстрация того, как вы проверяете пустые div, я предлагаю вам попробовать эту ссылку:
http://html-tuts.com/check-if-html-element-is-empty-or-has-children-tags/
Ниже приведены несколько коротких примеров:
Использование CSS
Если ваш div пуст, даже без пробелов, вы можете использовать CSS:
К сожалению, нет селектора CSS, который выбирает предыдущий элемент-брат. Есть только для следующего элемента-брата:
x ~ y
Использование jQuery
Проверка длины текста элемента с помощью функции text ()
Проверьте, есть ли внутри дочерние теги
Проверьте наличие пустых элементов, если в них есть пробелы
источник
Вы можете расширить jQuery функциональность следующим образом:
Расширить:
Использование:
источник
Попробуй это:
Не самое красивое, но должно работать. Он проверяет, является ли innerHTML (содержимое #leftmenu) пустой строкой (т.е. внутри нее ничего нет).
источник
В моем случае мне нужно было скрыть несколько элементов на document.ready. Это функция (фильтр), которая работала у меня до сих пор:
или .remove (), а не .hide (), как хотите.
К вашему сведению: это, в частности, решение, которое я использую, чтобы скрыть надоедливые пустые ячейки таблицы в SharePoint (в дополнение к этому условию "|| $ (this) .children (" menu "). Length".
источник
источник
Я столкнулся с этим сегодня, и принятые ответы не сработали для меня. Вот как я это сделал.
Мое решение проверяет, есть ли какие-либо элементы внутри div, поэтому он все равно будет отмечать div как пустой, если внутри него есть только текст.
источник
также вы можете использовать это:
Думаю, у тебя это сработает!
источник
источник