#jquery
#jquery
Вопрос:
У меня есть следующий HTML
<div class="outerBox">
<div class="innerBox">
//text
</div>
<div class="clickMe">
<span class="icon"></span>
</div>
</div>
<div class="hiddenDiv">//hidden div</div>
Мне нужно иметь возможность показывать («.hiddenDiv»), когда я нажимаю «.clickMe», но по какой-то причине я, похоже, не могу настроить таргетинг на него… Пробовал всевозможные варианты, но, похоже, ничего не работает. Вот последняя:
$(".clickMe").click(function() {
$(this).parents().closest(".hiddenDiv").show();
});
Комментарии:
1. Как насчет $ («.hiddenDiv»).show();
2. Что, если
.hiddenDiv
они есть где-то еще на странице? Это также показало бы их. Просто нужно быть немного более универсальным.3. Вы пробовали использовать
.parent()
или.closest(".hiddenDiv","body")
Ответ №1:
Как насчет этого:
$(".clickMe").click(function() {
$(this).parent().next(".hiddenDiv").show();
});
Или это:
$(".clickMe").click(function() {
$(this).parent().siblings(".hiddenDiv").show();
});
Ответ №2:
Попробуйте это:
$(this).parent().siblings('.hiddenDiv').show();
Ответ №3:
попробуйте это:
$(".clickMe").click(function() {
$('.hiddenDiv', $(this).parents()).show();
});
Ответ №4:
Попробуйте это:
$(".clickMe").click(function(){
$(this).closest(".outerBox").next(".hiddenDiv").show();
});