Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Обращение к вложенному элементу (https://javascript.ru/forum/jquery/21721-obrashhenie-k-vlozhennomu-ehlementu.html)

Skyman 21.09.2011 17:48

Обращение к вложенному элементу
 
Интересует, как можно обратиться к диву, у которого ссылка имеет класс active

<div><a href="#">...</a></div>
<div><a href="#">...</a></div>
<div><a href="#" class="active">...</a></div> <!-- Интересует этот div -->
<div><a href="#">...</a></div>

walik 21.09.2011 18:16

$('a.active').parent('div');

Триви 21.09.2011 18:16

<div><a href="#">...</a></div>
<div><a href="#">...</a></div>
<div><a href="#" class="active">...</a></div> <!-- Интересует этот div -->
<div><a href="#">...</a></div>


<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
alert($("a.active").parent('div').html());
</script>

Nightmare 21.09.2011 18:49

$('.active').closest('div')


Так будет лучше всего.

walik 21.09.2011 18:58

Конкретно в данном случае - без разницы

Skyman 21.09.2011 19:44

Что-то не работает.

Нужно, чтобы при нажатии на элемент с классом carousel-prev для div, у которого img с классом active, добавлялось css свойство display: block;

<div id="carousel">
  <div class="carousel-controls">
    <div class="carousel-prev"><a href="#"></a></div>
    <div class="carousel-next"><a href="#"></a></div>
  </div>
	<div class="c_w_block">
           <a href="#" class="w_info"><img src="2.jpg" class="active">
           <div>
           <span class="w_name">test1</span><br />
           <span class="w_for">test2</span>
           </div>
           </a>
        </div>
	<div class="c_w_block">
           <a href="#" class="w_info"><img src="2.jpg">
           <div>
           <span class="w_name">test1</span><br />
           <span class="w_for">test2</span>
           </div>
           </a>
        </div>
</div>


$(document).ready(function(){
	$('.carousel-prev').click(function(){
		$('img.active').parent('div.c_w_block').css('display', 'block');
	});
});

walik 21.09.2011 20:09

Вот здесь уже нужно использовать closest
Почитайте: Особенности использования .parent(), .parents(), .closest()

Skyman 21.09.2011 20:20

walik, спасибо, помогло.

Остался последний вопрос, а как обратится к div, который находится внутри ссылки с классом w_info, при условии, что у img класс active ?

walik 21.09.2011 21:02

$('img.active').parent('w_info').find('div');

Читайте документацию.


Часовой пояс GMT +3, время: 08:15.