File "brands.js"
Full Path: /home/warrior1/public_html/languages/wp-content/themes/storefront/assets/js/woocommerce/extensions/brands.js
File size: 1.11 KB
MIME-type: text/plain
Charset: utf-8
/**
* brands.js
*
* Adds sticky functionality to the brands index.
*/
( function () {
// eslint-disable-next-line @wordpress/no-global-event-listener
document.addEventListener( 'DOMContentLoaded', function () {
const brandsAZ = document.getElementsByClassName( 'brands_index' );
if ( ! brandsAZ.length ) {
return;
}
const adminBar = document.body.classList.contains( 'admin-bar' )
? 32
: 0,
brandsContainerHeight =
document.getElementById( 'brands_a_z' ).scrollHeight,
brandsAZHeight = brandsAZ[ 0 ].scrollHeight + 40;
const stickyBrandsAZ = function () {
if (
window.innerWidth > 768 &&
brandsAZ[ 0 ].getBoundingClientRect().top < 0
) {
brandsAZ[ 0 ].style.paddingTop =
Math.min(
Math.abs( brandsAZ[ 0 ].getBoundingClientRect().top ) +
20 +
adminBar,
brandsContainerHeight - brandsAZHeight
) + 'px';
} else {
brandsAZ[ 0 ].style.paddingTop = 0;
}
};
stickyBrandsAZ();
// eslint-disable-next-line @wordpress/no-global-event-listener
window.addEventListener( 'scroll', function () {
stickyBrandsAZ();
} );
} );
} )();