2013-02-02 2 views
1

Я хочу добавить класс (d_select) в тег, который href является «#tut», нажав Show.Получить элемент href в jquery не работает?

Но когда я нажимаю, ничего не происходит. Вот мой код:

<a class="show"><span>Show!</span></a>  

      <ul class="tab_cm"> 
       <li><a href="#details">Details</a></li> 
       <li><a href="#feed">Feedback</a></li> 
       <li><a href="#tut">Tutorial</a></li> 
       <li><a href="#map">Map</a></li> 
      </ul> 

<script> 
$(function(){ 
    $(".show").click(function(event){ 
    event.preventDefault(); 
    $("ul.tab_cm").find('a[href="#tut"]').addClass("d_select"); 
    }); 
}); 
</script> 

Я говорю по-английски не очень хорошо, я так жаль!

+2

Ваш код отлично работает здесь: http://jsfiddle.net/48aee/ Возможно, ваше правило css для класса недостаточно конкретное – charlietfl

+1

Я также проверил код, это правильный код, но ваш класс, вероятно, переопределяется правилом css: link. Используйте F12 в Google Chrome, найдите элемент, а затем посмотрите на правила класса CSS, чтобы узнать, какой из них имеет преимущество перед D-select. –

+0

Я делаю что-то неправильно в своем классе! Большое спасибо! –

ответ

2

Попробуйте $("ul.tab_cm").find('a[href="\\#tut"]').addClass("d_select");

\\ избежит персонажа, который имеет специальный CSS значение при использовании в качестве части селектора ... хотя это кажется JQuery достаточно умен, чтобы знать # в качестве ссылки на атрибут является буквальным во всяком случае, так что это не требуется.

+0

Я делаю что-то неправильно в своем классе! Спасибо! –

+0

@Boulevard Возможно, вы получите ответ, показывающий, что вы сделали, и как вы изменили его, чтобы помочь другим, кто делает то же самое. – Plynx

+0

@Plynx не нужно избегать '#', когда в кавычках – charlietfl

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