Анимировать родительский при использовании класса в jQuery

#jquery #html

#jquery #HTML

Вопрос:

Больше
В каждом блоке будет краткое изложение статьи.

     <div class="contentBlockTwo">
    <span class="moreButton"> More</span>
    <br /> Or new flashes.</div>
  

Как вы можете видеть, у меня есть свои «промежутки» как один и тот же класс, поэтому я могу применить к ним следующий jQuery:

             $('.moreButton').click(function () {

                $('.moreButton').parent().animate({ width: '98%' }, 800);
            });
  

Но независимо от того, какой из элементов «span» я нажимаю, КО ВСЕМ «Div» применяется анимация.

Как я могу применить анимацию к родительскому элементу отправителя / щелкнул «span», не предоставляя каждому «div» идентификатор?

Спасибо

Комментарии:

1. не совсем уверен, что это то, что вам нужно, но вы могли бы попробовать $(this).parent('div').animate(...)

Ответ №1:

заменить

 $('.moreButton').parent().animate({ width: '98%' }, 800);
  

с помощью

 $(this).parent().animate({ width: '98%' }, 800);
  

Комментарии:

1. Работает отлично! Большое спасибо за очень быстрый ответ.

Ответ №2:

http://jsfiddle.net/53TjS/1/

Да, я думаю, это делает это.

$(this).parent('div').animate(...)

Ответ №3:

 $('.moreButton').click(function () {
    $(this).parent().animate({ width: '98%' }, 800);
});
  

Вам нужно использовать this объект, иначе он повторно выбирает родительские элементы all .moreButton, а не тот, который вы нажали.

Комментарии:

1. Работает отлично! Большое спасибо за очень быстрый ответ.