JQuery вкладки HREF и ID - PullRequest
       32

JQuery вкладки HREF и ID

1 голос
/ 02 июня 2011

Я создал простую навигацию по вкладкам, используя css и javascript.Он работает нормально, хотя есть одна вещь, которую я хотел бы уточнить.

Каждый элемент списка (вкладки) имеет атрибут «href», который соответствует идентификатору div «tab content».Затем я использую jQuery и выполняю действия.

Теперь мой вопрос: чтобы получить идентификатор, я использую $(this).find('a').attr('href'), а затем простой show() для отображения соответствующего содержимого div.Если я использую $(this).attr('href') для получения идентификатора, функция show() не будет работать.

http://jsfiddle.net/eh4eB/

В чем разница между $(this).find('a').attr('href') И $(this).attr('href')

Ответы [ 3 ]

2 голосов
/ 02 июня 2011

Почему вы не используете вкладки jQueryUI ?Это было бы намного проще.

Ваш код будет таким:

<script>
$(function() {
    $( "#admin-nav" ).tabs();
});
</script>

2 голосов
/ 02 июня 2011

Поскольку ваш обработчик click находится на <li>, $(this) является оболочкой JQuery вокруг элемента <li>. И, конечно, <li> элементы не имеют атрибутов href, поэтому в них не будет никакого содержимого.

С другой стороны, $(this).find('a') даст вам объект JQuery, содержащий все элементы <a> внутри <li> - и .attr('href') вернет атрибут href из первого из них.

0 голосов
/ 02 июня 2011

Ваше событие click() связано с элементами li, поэтому внутри обработчика this также находится элемент li.Поэтому вам нужно найти дочерний элемент a, прежде чем вы сможете определить его атрибут href.

...