Quiero agregar una clase al elemento h3 anterior cada vez que se hace clic en cualquiera de los li debajo de él, aquí está mi html:
<div class="list">
<div class="marketing">
<h3><a href="#" class="sales"> List I</a></h3>
<div>
<ul>
<li><a href="#">item 1</a></li>
<li><a href="#">item 2</a></li>
<li><a href="#">item 3</a></li>
</ul>
</div>
</div>
<div class="operations">
<h3><a href="#" class="wise"> List II</a></h3>
<div>
<ul>
<li><a href="#">item a</a></li>
<li><a href="#">item b</a></li>
<li><a href="#">item c</a></li>
</ul>
</div>
</div>
</div>
Traté de usar el siguiente script pero en vano.
$('.list li').click(function () {
$(this)parent().prev('h3').addClass('active');
);
O cualquiera
$('.list li').click(function () {
$(this).parent().parent().children('h3')addClass('active');
);
¿Alguna idea?
0
Bill Kary
28 ago. 2014 a las 14:20
2 respuestas
La mejor respuesta
Utilice este
$('.list li').click(function () {
$(this).parent().parent().prev().addClass('active');
});
1
Mritunjay
28 ago. 2014 a las 10:31
Uso:
$(this).closest('div').prev('h3').addClass('active');
O
$(this).closest('div').siblings('h3').addClass('active');
3
Milind Anantwar
28 ago. 2014 a las 10:21
Preguntas relacionadas
Nuevas preguntas
javascript
Para preguntas sobre la programación en ECMAScript (JavaScript / JS) y sus diversos dialectos / implementaciones (excepto ActionScript). Incluya todas las etiquetas relevantes en su pregunta; por ejemplo, [node.js], [jquery], [json], etc.