2009-11-13 4 views
1

Мне нужна текущая выбранная вкладка, чтобы оставаться кликабельной (это означает, что ссылка должна быть активна).Вкладка JQuery - Сделать выбранную вкладку clickable

Содержимое на вкладке загружается через ajax и может меняться, поэтому способ может «обновить» содержимое, нажав на вкладку еще раз. Но настройки по умолчанию делают вкладку не кликабельной, если выбрано значение , что заставляет пользователя нажать на другую вкладку, а затем обратно , чтобы обновить содержимое.

Я ценю любую помощь, спасибо.

+2

Это не хорошая парадигма UI. Подумайте об этом таким образом, пользователь, который приходит на вашу страницу, должен знать, что они должны снова щелкнуть вкладку, чтобы обновить ее. Вместо этого, почему бы не добавить значок обновления или какое-либо сообщение, подобное тому, что делает gmail или facebook. Изменение парадигм интерфейса, как правило, не очень хорошая идея. :-) – AboutDev

+0

Я согласен с AboutDev. Вы можете легко добавить значок обновления JQuery UI в вкладку, которая также останется кликабельной на выбранной вкладке. – Daff

+1

Я согласен с значком «Обновить». Однако я не уверен, как вставить его с вкладками «JQuery UI». Если я добавлю изображение и привязку, он проскальзывает через вкладку ... У меня есть что-то вроде этого:

Balu

ответ

0

Плагин tabs запускает событие «tabsselect» при нажатии на вкладку. Регистрация обратного вызова, чей второй параметр будет иметь свойство «вкладки», где вы можете проверить, какая вкладка Вы находитесь на:

jQuery('#tabs-container').bind('tabsselect', function(e, tabsContainer) { 

    jQuery(tabsContainer.tab).attr('href')); 
}); 

EDITIED:

Он будет только огонь, когда язычок фактически изменяется. Возможно, привяжите элемент привязки в структуре вкладок и проверьте класс, выбранный ui-tabs. В плагине вкладок есть приличная документация: http://docs.jquery.com/UI/Tabs.

Грубо:

jQuery('#tabs-container a').bind('click', function() { 
    if(jQuery(e.target).hasClass('ui-tabs-selected')) { 
     // do some stuff 
    } 
}); 
0

Определить OnClick событие якорем на вкладку, чтобы перезагрузить или отправить на родительской странице, как этот

<div id="divTab"> 
    <ul> 
    <li><a href="#tab_1">First Tab</a></li> 
    <li><a href="#tab_2" style="cursor:pointer;" onclick="window.location.reload();">Second Tab</a> 
    </li> 
    <li><a href="#tab_3" style="cursor:pointer;" onclick="window.location.replace('url');">Third Tab</a> 
    </li> 
    </ul> 
</div> 
Смежные вопросы