2013-06-22 4 views
0

я продолжать работать в этой проблему из-за забавную кратковременную потерю памяти ...Выбор DIV в родительском элементе

То, что я пытаюсь сделать, это slideToggle DIV элемент, который находится в том же родительском элементе в качестве кнопки ,

На каждой загруженной странице имеется несколько конструкций html, поэтому выбор правильной соответствующей цели.

<div class="exBtn"> 
    <a href="#"> 
    <img src="<?php echo get_template_directory_uri(); ?>/media/showTextButton.png"> 
    </a> 
</div> 

<div class="initialPostLoad"> 
    <?php the_content('Read the rest of this entry &raquo;'); ?> 
</div> <!-- end initialPostLoad --> 


    $(document).ready(function() { 
     $('.exBtn a').click(function (event) { 
      event.preventDefault(); 
      $(this).parent().closest('.initialPostLoad').slideToggle(); 
     }); 
    }); 

ответ

3
$(this).parent().closest('.initialPostLoad').slideToggle(); 

Вы не хотите closest. closest означает «поиск среди родителей этого элемента». Вы хотите искать среди братьев и сестер. Фактически, то, что вы хотите сделать, это получить самого следующего брата. Это просто: просто используйте next:

$(this).parent().next().slideToggle(); 
+0

Ahhh Я был смущен родителем, ребенком и родным братом. Это, исходя из того, кто не является единственным ребенком ... – canacast

+1

@canacast Возможно, вы приехали из Норфолка ... – lonesomeday

0

Использование .next()

$(this).parent().next('.initialPostLoad').slideToggle(); 

в .initialPostLoad находится рядом с exBtn