Похоже, не удается настроить таргетинг на ближайший div с помощью jQuery

#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();
});
  

скрипка:http://jsfiddle.net/maniator/Wpqz4 /

Ответ №4:

Попробуйте это:

 $(".clickMe").click(function(){
    $(this).closest(".outerBox").next(".hiddenDiv").show();
});