JQuery вкладки, чтобы открыть вкладку с определенным классом - PullRequest
4 голосов
/ 27 мая 2011

У меня была проблема, которая заняла больше времени, чем следовало бы. Я использую jquery.tabs.js, есть контейнер вкладок, который содержит месяцы, и внутри каждого месяца есть список ul, содержащий элементы. Страница называется «Past Items», поэтому, когда пользователь открывает эту страницу сегодня, скажем, вчерашний элемент будет иметь класс «selected-item», и он будет выделен, а у контейнера месяца или вкладки будет класс «selectedmonth», вопрос в том, как сделать так, чтобы эта вкладка открывалась при доступе к странице? Первая вкладка открывается по умолчанию. проверка: прошлые товары

и нажмите на май. Я надеюсь, что смогу объяснить, что мне нужно :) Спасибо!

Ответы [ 2 ]

5 голосов
/ 27 мая 2011

Вы должны использовать «выбранную» опцию

$("#your_tabs").tabs({ 
    [ ... your options ... ]
    selected: X
});

Если X - это нулевой индекс открываемой вкладки (в вашем примере X должно быть 4).

Чтобы выбрать вкладку после инициализации, вы можете использовать метод select ()

$("#your_tabs").tabs("select", X);
0 голосов
/ 27 мая 2011

Я думаю, вам нужен небольшой JQuery + CSS Hack.

1 - Удалить выбранный вкладками класс из каждой вкладки

$(".monthscontainer li").removeClass("tabs-selected");

2 - Добавить выбранный вкладками класс к текущеймесяц показывает, что будет выделен пятый месяц:

$(".monthscontainer  li:nth-child(5)").addClass("tabs-selected");

или

$(".selectedmonth").addClass("tabs-selected");

3 - добавить класс скрытия вкладок к первому tabdiv

$(".tabs-container:first").addClass("tabs-hide");

4 - убрать вкладки - спрятаться на пятом делении.

$("#2011-5").removeClass("tabs-hide");

Да, я знаю, что это хак, но кажется, что вкладка Jquery UI не содержит другой выбор по умолчанию вместо первой вкладки.

Извините, чешуекрылый прав, самый простой способ, если вы поместите выделение в функцию загрузки:

$( ".months" ).tabs( "option", "selected", 5 );

Подробнее об этом можно прочитать здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...