если у div есть контент покажи div
91131 просмотра
4 ответа
хорошо, вот что у меня есть ... работает нормально, но ищет слово, а не содержание. я просто хочу, чтобы он показывал, когда есть какой-либо контент ..
$(document).ready(function(){
if ($("#box3:contains('Product')").length) {
$('#third').show();
}
});
я не думаю, что вам нужен HTML для этого
он ищет «Продукт», как мне сделать, чтобы он просто смотрел контент> 0
<div id="first" class="tab" >
<div class="tabtxt">
<a>DETAILS</a>
</div>
</div>
<div class="tab" id="second">
<div class="tabtxt">
<a>INSPIRATION</a>
</div>
</div>
<div class="tab" id="third" style="display:none">
<div class="tabtxt">
<a>NOTES</a>
</div>
</div>
<div class="boxholder">
<div style="overflow: hidden; display:block" class="box" id="box1">
<div style="padding: 10px; line-height:16px">
%%Panel.ProductDescription%%
</div>
</div>
<div style="overflow: hidden; display:none" class="box" id="box2">
<div style="padding: 10px; line-height:16px">
%%Panel.ProductWarranty%%
</div>
</div>
<div style="overflow: hidden; display:none" class="box" id="box3">
<div style="padding: 10px; line-height:16px">
%%Panel.UPC%%
</div>
</div>
</div>
Это внутренняя корзина покупок, поэтому %% panel.upc %% вызывает что-то, вставленное через панель администратора. в этом случае, если ничего нет .. это отображается как пустое место в коде (просмотр источника в браузере).
Автор: Alex Источник Размещён: 12.11.2019 09:37Ответы (4)
63 плюса
Если вы хотите проверить текст , вы можете использовать text()
метод:
$(document).ready(function(){
if ($("#box3").text().length > 0) {
$('#third').show();
}
});
Или для HTML:
$(document).ready(function(){
if ($("#box3").html().length > 0) {
$('#third').show();
}
});
Автор: Sarfraz
Размещён: 08.10.2010 06:52
15 плюса
Для обновленного вопроса: проверьте обрезанный текст внутреннего <div>
, как это:
if ($.trim($("#box3 div").html())) {
$('#third').show();
}
Предыдущий ответ: Если вы хотите показать, есть ли что- то , то проверка :not()
на :empty
работоспособность:
if ($("#box3:not(:empty)").length) {
$('#third').show();
}
Если вы хотите проверить наличие каких-либо элементов (возможно, не только пробелов), используйте следующую команду :has(*)
:
if ($("#box3:has(*)").length) {
$('#third').show();
}
Автор: Nick Craver
Размещён: 08.10.2010 06:51
1 плюс
Вы также можете использовать селектор CSS3 :empty
div#empty-div:empty {
display: none;
}
:empty
Селектор только нацеливание только пустые элементы, без пробелов.
0 плюса
Вы также можете проверить длину HTML внутри вашего селектора:
if ($("#box3").html().length) {
$('#third').show();
}
Автор: swilliams
Размещён: 08.10.2010 06:52
Вопросы из категории :
- jquery Прокрутка переполненных DIV с помощью JavaScript
- jquery Экранирование строк HTML с помощью jQuery
- jquery Как сравнить HTML-сущность с JQuery
- jquery Есть ли функция "существует" для jQuery?
- jquery Как удалить все параметры в окне выбора, а затем добавить один вариант и выбрать его с помощью jQuery?
- jquery Получение идентификатора элемента, который вызвал событие
- animation Имейте reloadData для анимации UITableView при изменении
- animation Как лучше всего сдвинуть панель в WPF?
- animation Плавная анимация с использованием GTK +
- animation Математическое уравнение для расчета различных скоростей для затухающей анимации
- animation Как заставить выполнение приостановить, поспать, подождать X секунд в R?
- animation Как запустить две анимации jQuery одновременно?
- html Определить часовой пояс пользователя
- html Как определить, какой из указанных шрифтов был использован на веб-странице?
- html Как мне дать моим веб-сайтам значок для iPhone?
- html Как отключить автозаполнение браузера в поле веб-формы / теге ввода?
- html Как автоматически изменить размер текстовой области с помощью Prototype?
- html Как вы можете настроить номера в упорядоченном списке?