mirror of https://github.com/ColorlibHQ/AdminLTE
enhanced PushMenu with sidebar state remember
parent
c3fffde6c0
commit
c98018c880
|
@ -23,7 +23,9 @@ const PushMenu = (($) => {
|
||||||
|
|
||||||
const Default = {
|
const Default = {
|
||||||
autoCollapseSize: false,
|
autoCollapseSize: false,
|
||||||
screenCollapseSize: 768
|
screenCollapseSize: 768,
|
||||||
|
enableRemember: false,
|
||||||
|
noTransitionAfterReload: true
|
||||||
}
|
}
|
||||||
|
|
||||||
const Selector = {
|
const Selector = {
|
||||||
|
@ -64,6 +66,10 @@ const PushMenu = (($) => {
|
||||||
show() {
|
show() {
|
||||||
$(Selector.BODY).addClass(ClassName.OPEN).removeClass(ClassName.COLLAPSED)
|
$(Selector.BODY).addClass(ClassName.OPEN).removeClass(ClassName.COLLAPSED)
|
||||||
|
|
||||||
|
if(this._options.enableRemember) {
|
||||||
|
localStorage.setItem(`remember${EVENT_KEY}`, ClassName.OPEN);
|
||||||
|
}
|
||||||
|
|
||||||
const shownEvent = $.Event(Event.SHOWN)
|
const shownEvent = $.Event(Event.SHOWN)
|
||||||
$(this._element).trigger(shownEvent)
|
$(this._element).trigger(shownEvent)
|
||||||
}
|
}
|
||||||
|
@ -71,6 +77,10 @@ const PushMenu = (($) => {
|
||||||
collapse() {
|
collapse() {
|
||||||
$(Selector.BODY).removeClass(ClassName.OPEN).addClass(ClassName.COLLAPSED)
|
$(Selector.BODY).removeClass(ClassName.OPEN).addClass(ClassName.COLLAPSED)
|
||||||
|
|
||||||
|
if(this._options.enableRemember) {
|
||||||
|
localStorage.setItem(`remember${EVENT_KEY}`, ClassName.COLLAPSED);
|
||||||
|
}
|
||||||
|
|
||||||
const collapsedEvent = $.Event(Event.COLLAPSED)
|
const collapsedEvent = $.Event(Event.COLLAPSED)
|
||||||
$(this._element).trigger(collapsedEvent)
|
$(this._element).trigger(collapsedEvent)
|
||||||
}
|
}
|
||||||
|
@ -105,9 +115,26 @@ const PushMenu = (($) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
remember() {
|
||||||
|
if(this._options.enableRemember) {
|
||||||
|
var toggleState = localStorage.getItem(`remember${EVENT_KEY}`);
|
||||||
|
if (toggleState == ClassName.COLLAPSED){
|
||||||
|
if (this._options.noTransitionAfterReload) {
|
||||||
|
$("body").addClass('hold-transition').addClass(ClassName.COLLAPSED).delay(10).queue(function() {
|
||||||
|
$(this).removeClass('hold-transition');
|
||||||
|
$(this).dequeue()
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
$("body").addClass(ClassName.COLLAPSED);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Private
|
// Private
|
||||||
|
|
||||||
_init() {
|
_init() {
|
||||||
|
this.remember()
|
||||||
this.autoCollapse()
|
this.autoCollapse()
|
||||||
|
|
||||||
$(window).resize(() => {
|
$(window).resize(() => {
|
||||||
|
|
Loading…
Reference in New Issue