Мой сайт использует AdminLTE. Я пытаюсь реализовать функцию, когда всякий раз, когда пользователь сворачивает боковую панель веб-сайта, браузер сохраняет это состояние в localStorage. Затем, если пользователь обновляет страницу, браузер автоматически загружает боковую панель в свернутом состоянии.
Проблема заключается в том, что после обновления и расширения боковой панели элемент Select2 не изменяется должным образом:
Неверный размер элемента select2
Если, однако, пользователь расширяет боковую панель и затем обновляет страницу, размер элемента Select2 изменяется правильно:
Правильный элемент select2 размер
Есть идеи о том, что происходит? Спасибо за помощь!
Obs .: Вот фрагмент кода, который используется для сохранения состояния боковой панели:
<!-- Preserve Sidebar toggle state -->
<script>
$.AdminLTESidebarTweak = {};
$.AdminLTESidebarTweak.options = {
EnableRemember: true,
NoTransitionAfterReload: true,
};
$(function () {
// Set key-value in Local Storage to remember sidebar state
$("body").on("collapsed.pushMenu", function(){
if($.AdminLTESidebarTweak.options.EnableRemember){
localStorage.setItem("sidebar", "closed");
}
});
$("body").on("expanded.pushMenu", function(){
if($.AdminLTESidebarTweak.options.EnableRemember){
localStorage.setItem("sidebar", "opened");
}
});
// Removes animation when reloading page
if($.AdminLTESidebarTweak.options.EnableRemember){
if(localStorage.getItem("sidebar") == "closed"){
if($.AdminLTESidebarTweak.options.NoTransitionAfterReload){
$("body").addClass('sidebar-collapse hold-transition').delay(100).queue(function(){
$(this).removeClass('hold-transition');
});
}else{
$("body").addClass('sidebar-collapse');
}
}
}
});
</script>