2013-03-18 1 views
0

Когда активный класс присутствует на <a>, я хотел бы переместить этот класс до его самого высокого родителя; <div class="views-row">Как найти активный класс и перенести его в родительский контейнер с помощью jQuery?

<div class="views-row-unformatted views-row views-row-2 views-row-even"> 
    <div class="title"> 
    <span class="field-content"> 
     <a class="active"> 
     <h3>Title Text</h3> 
     </a> 
    </span>  
    </div> 
</div> 

я ограничен работать в тематическом слое и имеют только JQuery и CSS, как мои инструменты.

ответ

1

Вы можете использовать :has селектор или has метод:

$('div.views-row:has(a.active)') 
        .addClass('active') 
        .find('a.active') 
        .removeClass('active'); 

http://jsfiddle.net/RmxWq/

+0

Спасибо, что выбрали лишнюю милю и предоставили jsfiddle. – JCL

+0

@JCL Добро пожаловать. – undefined

0

использование :has(), parents() и addClass().

$('a:has(".active")').parents('div.views-row').addClass('active');