2014-11-04 4 views
-3

Это должно быть довольно легко, но по какой-то причине я борюсь.Добавить класс в родительский div, используя jquery

У меня есть Нижеследующая HTML структурировать

<div class="subcontent_detail> 
    <h4>some text</h4> 
    <div class="divider"></div> 
    <div class="changevid"></div> 
</div> 

То, что я хочу, когда changevid щелкают класс, называемый 'активный' должен быть добавлен после subcontent

мой код

$('.changevid').click(function(e){ 
e.preventDefault(); 
$(this).parent().parent().addClass('active'); 
return false; 
    }); 

Любой помощь приветствуется. Заранее спасибо.

+5

Почему «родитель» дважды? –

+0

ahhh снова такой идиот я .. Спасибо. Paulie – Raj

+1

И почему 'e.preventDefault();', нет никакого поведения по умолчанию для DIV-щелчка и в любом случае, вы возвращаете false –

ответ

5

Вы звоните parent() дважды. Это должно работать:

$('.changevid').click(function(e){ 
    $(this).parent().addClass('active'); 
}); 

Примечание Вы также не должны preventDefault() или return false, потому что щелкнули элемент не является ссылкой.

+0

Большое вам спасибо за последний бит объяснение. – Raj

+0

Извините, подождите 11 минут – Raj

+2

'return false;' может состоять в том, чтобы остановить распространение событий, но не уверен, что есть какая-то причина, по которой ей тоже понадобится –

Смежные вопросы