2016-04-22 1 views
0

У меня есть семантический аккордеон. Он работает правильно. Но когда пользователь перезагружает страницу, он открывает индексный элемент по умолчанию, как и ожидалось. Я хочу открыть последний активный индекс после обновления страницы. Я хочу использовать javascript document.cookie, чтобы сохранить индекс последнего активного элемента. Моя проблема в том, что я не могу получить индекс элемента внутри события onOpen.Semantic-ui accordion получить индекс открытого элемента внутри onOpen event

HTML:

<div class="ui styled accordion sticky"> 
    <div class="item"> 
     <div class="title active"> 
      Users 
     </div> 
     <div class="content active"> 
      List 
     </div> 
    </div> 
    <div class="item"> 
     <div class="title active"> 
      Items 
     </div> 
     <div class="content active"> 
      List 
     </div> 
    </div> 
</div> 

JQ:

$('.ui.accordion').accordion({ 
    onOpen: function (item) { 
     setCookie('acordionIndex',this.index); 
    } 
}).accordion('open', getCookie('acordionIndex')); 

Я нашел этот вопрос This question но рекомендуется решение не работает.

Примечание: мои функции getCookie и setCookie работают правильно.

ответ

0

Я решил попробовать альтернативные варианты. Изменено onOpen Событие до onOpening

$('.ui.accordion').accordion('open', getCookie('acordionIndex') * 1).accordion({ 
     onOpening: function (item) { 
      setCookie('acordionIndex', this.index('.content') - 1, 2) 
     } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^