Получить класс родительского элемента

У меня есть следующая разметка HTML:

<div class="nav">
   <ul>
      <li class="tab1">
         <a href="#1" class="current">Welcome</a>
      </li>
      <li class="tab2">
         <a href="#2">About</a>
      </li>
      <!-- and some lists more -->
   </ul>
</div>

и я хотел бы найти class родительского элемента дочернего элемента с .current:

var currentli = $('.nav').find('a.current').parent().attr('class');
console.log(currentli);

но он всегда меня бросает undefined

ПРИМЕЧАНИЕ: Я не знаю, какой a в настоящее время имеет .current, поэтому я должен использовать метод .find().

Ответы

Ответ 1

Ваш код уже должен работать, но может быть более надежно получить доступ к свойству className:

var currentli = $('.nav').find('a.current').parent().prop('className');

Ответ 2

Это будет работать:

var currentli = $($('.nav').find('a.current')).parent().attr('class');
console.log(currentli);

Я просто преобразовываю найденную коллекцию в объект jQuery еще раз.

Смотрите скрипту: http://jsfiddle.net/RaphaelDDL/wnW4u/

Ps.: Если более одного a имеет class="current", будет восстановлен только первый.