2014-10-14 2 views
-1

Я пытаюсь удалить класс элемента, который содержит a с href. У меня есть href, но почему я не могу удалить класс таким образом?Удалить класс не работает с id # .parent?

сценарий:

... 

$('#panel1').parent('li').removeClass('active'); //doesn't work.... 

... 

HTML:

... 
<ul class = "tab-links"> 
    <!-- Each tab is Anchored to its Contents --> 
    <li class = "active"><a href ="#panel1">Panel 1</a></li> 
    <li><a href ="#panel2">Panel 2</a></li> 
    <li><a href ="#panel3">Panel 3</a></li> 
    <li><a href ="#panel4">Panel 4</a></li> 
    </ul> 
+3

Помимо отсутствующих котировок в вашем html-элементе отсутствует элемент с идентификатором 'panel1'. – undefined

+0

Кроме того, вам не нужен хэш как часть идентификатора (который, как мы думаем, вы намереваетесь), хеш происходит из селектора css для идентификатора. – RutledgePaulV

ответ

1

Вам нужно кавычки вокруг вас селекторе

$('#panel1').parent('li').removeClass('active'); //doesn't work.... 
3

Вам нужно в кавычки аргумента $(). Кроме того, для поиска идентификатора используются селекторы #xxx, но у ваших якорей нет идентификаторов, у них всего href. Вам необходимо:

$("a[href='#panel1']").parent('li').removeClass('active'); 
+0

Что такое другой синтаксис для поиска с атрибутом определенного значения? – jerryh91

+0

'$ (" # id ")', '$ (". Class ")' и '$ (" [attribute = value] ")'. См. Документацию по jQuery: http://api.jquery.com/category/selectors/ – Barmar

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