Check类有另一个类,并将类添加到下一个孩子

时间:2016-12-29 17:14:42

标签: javascript jquery html css

我在导航中设置了以下内容:

<div class="navegacion"><a href="/sobre" title="Sobre Nostros">Sobre Nosotros</a></div>
<div class="navegacion"><a href="/noticias" title="Noticias">Noticias</a></div>
<div class="navegacion"><a href="/elementos" title="Elementos">Elementos</a></div>
<div class="navegacion"><a href="/lugares" title="Lugares">Lugares</a></div>
<div class="navegacion"><a href="/propositos" title="Propositos">Propositos</a></div>
<div class="navegacion"><a href="/esculeas" title="Escuelas">Escuelas</a></div>

当用户转到某个页面时,www.example.com/sobre会向sobre添加一个新类,因此它看起来像那些

<div class="navegacion seleccionado"><a href="/sobre" title="Sobre Nostros">Sobre Nosotros</a></div>

我知道如何检查类navegacion是否有类seleccionado,但我想要做的是对于具有类navegacion的后续子seleccionado来添加类oscuro,如果我在页面sobre

中,它会是这样的
<div class="navegacion seleccionado"><a href="/sobre" title="Sobre Nostros">Sobre Nosotros</a></div>
<div class="navegacion oscuro"><a href="/noticias" title="Noticias">Noticias</a></div>

或者像这样,如果我在页面noticias中,它将会是这样的

<div class="navegacion"><a href="/sobre" title="Sobre Nostros">Sobre Nosotros</a></div>
<div class="navegacion seleccionado"><a href="/noticias" title="Noticias">Noticias</a></div>
<div class="navegacion oscuro"><a href="/elementos" title="Elementos">Elementos</a></div>

等等

我以为我可以这样做

$( document ).ready(function() {
    if($(".navegacion").hasClass("seleccionado")) {
        $(this).next().addClass("oscuro");
    }
});

但它显然无效。

1 个答案:

答案 0 :(得分:2)

this未引用其引用document对象的元素。因此,选择具有两个类的元素并执行相同的操作。

$(document).ready(function() {
  $(".navegacion.seleccionado").next().addClass("oscuro");
});