Вы также можете сохранить идентификатор подменю. Вы можете назвать это activeCollapseGroupSubmenu
в localStorage.
Сначала вы можете проверить внутри активного элемента другой класс .show
. Это элемент подменю. Если вы нашли его, сохраните идентификатор в localStorage.
Затем, когда вы проверяете, находится ли идентификатор меню localStorage в localStorage, вы также проверяете подменю.
$(document).ready(function() {
$("#sidebarCollapse").on("click", function() {
$("#sidebar").toggleClass("active");
});
//when a collapse group is shown, save it as the active collapse group
$("#sidebarmenu").on("shown.bs.collapse", function() {
var active = $("#sidebarmenu .show");
var submenuActive = active.find(".show").attr("id");
localStorage.setItem("activeCollapseGroup", active.attr("id"));
if (submenuActive) {
localStorage.setItem("activeCollapseGroupSubmenu", submenuActive);
}
});
$("#sidebarmenu").on("hidden.bs.collapse", function() {
localStorage.removeItem("activeCollapseGroup");
localStorage.removeItem("activeCollapseGroupSubmenu");
});
var last = localStorage.getItem("activeCollapseGroup");
var lastSubmenu = localStorage.getItem("activeCollapseGroupSubmenu");
if (last !== null) {
//remove default collapse settings
$("#sidebarmenu .panel-collapse").removeClass("show");
//show the account_last visible group
$("#" + last).addClass("show");
if (lastSubmenu) {
$("#" + last).find("#" + lastSubmenu).addClass("show");
}
}
});