【问题标题】:jQuery and HTML, how to use localstorage in dropdown toggle menujQuery 和 HTML,如何在下拉切换菜单中使用本地存储
【发布时间】:2020-09-03 11:53:16
【问题描述】:

我有一个问题要问你。我正在尝试在我的下拉切换菜单中使用 localstorage。我有以下 HTML 代码:

<li class="nav-item" id="sidebar">
                    <a class="sidebar-heading" href="#thirdSubmenu" data-toggle="collapse" 
                    class="dropdown-toggle">Anagrafica</a>
                    <ul class="collapse list-unstyled" id="thirdSubmenu">
                        <li>
                            <a class="nav-link" href="">
                                <span data-feather="database"></span>
                                Categorie Materiale</a>
                        </li>
                        <li>
                            <a class="nav-link" href="">
                                <span data-feather="database"></span>
                                Sottocategorie Materiale</a>
                        </li>

..

我想要这样,当我点击 Anagrafica 并打开下拉菜单时,当我更新我的页面时它也保持打开状态,存储 dropdwon 是否打开。我已经尝试了以下代码,但确实有效。我不擅长 jQuery,所以我希望你们中的某个人可以帮助我。

这里是我的 jQuery 代码:

    $("#thirdSubmenu li a").on("click", function() {
    var container = $(this).closest("li");
    var selected_item_index = $("#thirdSubmenu li a").index(container);
    localStorage.setItem("sidebar_selected", selected_item_index );
});

$(function() {
    $("#thirdSubmenu li").eq(parseInt(localStorage.getItem("selected_item_index "))).addClass("active");
});

【问题讨论】:

    标签: javascript html jquery django ajax


    【解决方案1】:

    您也可以使用 JavaScript Cookie。在 cookie 中存储一个值

    【讨论】:

    • 你能举个例子吗?
    【解决方案2】:

    您想在其兄弟姐妹中索引父 &lt;li&gt;

    尝试改变

     $("#thirdSubmenu li a").on("click", function() {
        var container = $(this).closest("li");
        var selected_item_index = $("#thirdSubmenu li a").index(container);
        localStorage.setItem("sidebar_selected", selected_item_index );
    });
    

     $("#thirdSubmenu li a").on("click", function() { 
        // get index of parent `<li>` within it's siblings       
        var selected_item_index = $(this).parent().index();
        localStorage.setItem("sidebar_selected", selected_item_index );
    });
    

    【讨论】:

    • 我已经尝试过您的代码,但它不起作用。如果我更新页面,下拉菜单打开返回关闭
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-19
    相关资源
    最近更新 更多