|
|
|
@ -152,10 +152,34 @@ class ControlSidebar {
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_isNavbarFixed() {
|
|
|
|
|
const $body = $('body')
|
|
|
|
|
return (
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_SM_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_MD_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_LG_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_XL_FIXED)
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_isFooterFixed() {
|
|
|
|
|
const $body = $('body')
|
|
|
|
|
return (
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_SM_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_MD_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_LG_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_XL_FIXED)
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_fixScrollHeight() {
|
|
|
|
|
const $body = $('body')
|
|
|
|
|
const $controlSidebar = $(this._config.target)
|
|
|
|
|
|
|
|
|
|
if (!$body.hasClass(CLASS_NAME_LAYOUT_FIXED)) {
|
|
|
|
|
$controlSidebar.attr('style', 'display: block;')
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -170,23 +194,10 @@ class ControlSidebar {
|
|
|
|
|
top: $(window).scrollTop()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const navbarFixed = (
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_SM_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_MD_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_LG_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_NAVBAR_XL_FIXED)
|
|
|
|
|
) && $(SELECTOR_HEADER).css('position') === 'fixed'
|
|
|
|
|
const navbarFixed = this._isNavbarFixed() && $(SELECTOR_HEADER).css('position') === 'fixed'
|
|
|
|
|
|
|
|
|
|
const footerFixed = (
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_SM_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_MD_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_LG_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_XL_FIXED)
|
|
|
|
|
) && $(SELECTOR_FOOTER).css('position') === 'fixed'
|
|
|
|
|
const footerFixed = this._isFooterFixed() && $(SELECTOR_FOOTER).css('position') === 'fixed'
|
|
|
|
|
|
|
|
|
|
const $controlSidebar = $(this._config.target)
|
|
|
|
|
const $controlsidebarContent = $(`${this._config.target}, ${this._config.target} ${SELECTOR_CONTROL_SIDEBAR_CONTENT}`)
|
|
|
|
|
|
|
|
|
|
if (positions.top === 0 && positions.bottom === 0) {
|
|
|
|
@ -216,12 +227,22 @@ class ControlSidebar {
|
|
|
|
|
} else {
|
|
|
|
|
$controlSidebar.css('top', heights.header)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (footerFixed && navbarFixed) {
|
|
|
|
|
$controlsidebarContent.css('height', '100%')
|
|
|
|
|
$controlSidebar.css('height', '')
|
|
|
|
|
} else if (footerFixed || navbarFixed) {
|
|
|
|
|
$controlsidebarContent.css('height', '100%')
|
|
|
|
|
$controlsidebarContent.css('height', '')
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_fixHeight() {
|
|
|
|
|
const $body = $('body')
|
|
|
|
|
const $controlSidebar = $(`${this._config.target} ${SELECTOR_CONTROL_SIDEBAR_CONTENT}`)
|
|
|
|
|
|
|
|
|
|
if (!$body.hasClass(CLASS_NAME_LAYOUT_FIXED)) {
|
|
|
|
|
$controlSidebar.attr('style', '')
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -233,19 +254,12 @@ class ControlSidebar {
|
|
|
|
|
|
|
|
|
|
let sidebarHeight = heights.window - heights.header
|
|
|
|
|
|
|
|
|
|
if (
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_SM_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_MD_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_LG_FIXED) ||
|
|
|
|
|
$body.hasClass(CLASS_NAME_FOOTER_XL_FIXED)
|
|
|
|
|
) {
|
|
|
|
|
if (this._isFooterFixed()) {
|
|
|
|
|
if ($(SELECTOR_FOOTER).css('position') === 'fixed') {
|
|
|
|
|
sidebarHeight = heights.window - heights.header - heights.footer
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const $controlSidebar = $(`${this._config.target} ${SELECTOR_CONTROL_SIDEBAR_CONTENT}`)
|
|
|
|
|
$controlSidebar.css('height', sidebarHeight)
|
|
|
|
|
|
|
|
|
|
if (typeof $.fn.overlayScrollbars !== 'undefined') {
|
|
|
|
|