Вкладки jQueryUI: другая вкладка = другой файл cookie?

У меня есть две стандартные вкладки jQueryUI, которые выглядят почти одинаково. Для удобства они добавили опцию cookie. Но теперь, когда я переключаю страницу с одной вкладки на другую, тот же индекс вкладки будет выбран на другой странице из-за файла cookie.

Можно ли назначить идентификатор cookie для функции вкладки или что-то подобное?

HTML:

<div id='tabs' class='ui-tabs'>  
  <ul class='ui-tabs-nav'>
    <li><a href='link'>Item</a></li>
    <li><a href='link'>Item</a></li>
    <li><a href='link'>Item</a></li>
    <li><a href='link'>Item</a></li>
    <li><a href='link'>Item</a></li>
  </ul>
</div>

И jQuery:

$(function() {
  $('#tabs').tabs({
    cookie: {expires: 1}, 
    spinner: '<img src=\'img/icons/loading.gif\' />', 
    load: function (e, ui) { $(ui.panel).find('.tab-loading').remove(); }, 
    select: function (e, ui) { 
      var $panel = $(ui.panel); 
      if ($panel.is(':empty')) { 
        $panel.append('<div class=\'tab-loading\' style=\'text-align: center; font-weight: bold; width: 100%\'>Loading...</div>') 
      } 
    } 
  }) 
});

person MicBehrens    schedule 25.10.2011    source источник


Ответы (1)


Вы можете сделать это с именем :)

Начиная с jQuery UI 1.7, также можно определить имя используемого файла cookie через свойство name.

$(function() {
  $('#tabs').tabs({
    cookie: {name: 'myTabCookie', expires: 1}, 
    spinner: '<img src="img/icons/loading.gif" />', 
    load: function (e, ui) { $(ui.panel).find('.tab-loading').remove(); }, 
    select: function (e, ui) { 
      var $panel = $(ui.panel); 
      if ($panel.is(':empty')) { 
        $panel.append('<div class="tab-loading" style="text-align: center; font-weight: bold; width: 100%">Loading...</div>') 
      } 
    } 
  }) 
});
person Marco Johannesen    schedule 25.10.2011