语义 UI 手风琴获取打开事件中打开的项目的索引

Semantic-ui accordion get index of opened item inside onOpen event

本文关键字:UI 项目 索引 事件 手风琴 语义 获取      更新时间:2023-09-26

我有一个语义UI手风琴。它工作正常。但是当用户重新加载页面时,它会按预期打开默认索引项。我想要的是页面刷新后打开最后一个活动索引。我决定使用 javascript document.cookie 来保留最后一个活动项目的索引。我的问题是我无法获取事件onOpen元素的索引。

.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'));

我发现了这个问题这个问题,但建议的解决方案不起作用。

注意:我的getCookiesetCookie功能工作正常。

我已经通过尝试其他选项解决了。将onOpen事件更改为onOpening

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