Вот моя скрипка: http://jsfiddle.net/jamesbrighton/wxWgG/4/JQuery выберите первый элемент, который имеет определенный класс после этого
HTML:
<div>
<p class="click">Click 1</p>
<p>This should be ignored</p>
<p>This should be ignored</p>
<p>This should be ignored</p>
</div>
<div>
<p class="target">Target 1</p>
</div>
<div>
<p class="target">Target 2</p>
</div>
<div>
<p class="click">Click 2</p>
<p>This should be ignored</p>
<p>This should be ignored</p>
<p>This should be ignored</p>
</div>
<div>
<p class="target">Target 3</p>
</div>
<div>
<p class="target">Target 4</p>
</div>
JQuery:
$('.click').click(function() {
$(this).nextAll('.target').css('color','red');
});
мне это нужно так, когда вы нажимаете a p.click
, следующий p.target
становится красным.
Так что если вы нажмете на 'Click 1'
, то 'Target 1'
станет красным. Если вы нажмете на 'Click 2'
, тогда 'Target 3'
станет красным.
Как и .find
Я пробовал .closest
и из документации jQuery мне кажется, что он должен работать. Как вы можете видеть из HTML, .target
не является дочерним по отношению к .click
, если это имеет значение.
nextВсе работы над братьями и сестрами, а не за ее родителями. Поэтому вам нужно рассказать нам, как вы хотите пройти. Если вы хотите, чтобы родители брали ребенка, тогда это возможно. –
Ваш пример не очень хорош, он содержит только один элемент «Щелчок». Как связаны «Click» и «Target»? Являются ли они оба в порядке, то есть, если щелкнуть второй щелчок, нужно ли выделить вторую «Целевую» и т. Д.? * edit: * видимо вы связаны с неправильной скрипкой. Вот почему вы всегда должны включать код. –
Я не вижу «Click 1» или «Click 2». Обновлен ли ваш код? –