ba-block-cli
Version:
Auto-create blocks for WordPress ACF
42 lines (36 loc) • 1.54 kB
JavaScript
// DOM content loaded event listener
document.addEventListener('DOMContentLoaded', function() {
console.log('Partners init');
/**
* Logo swiper
* @param {DOMElement} partnersSection
*/
function showHideLogos(partnersSection) {
var sliderContent = partnersSection.querySelector('.slider-content');
if (sliderContent) {
var logos = partnersSection.querySelectorAll('.partner'),
contentWidth = sliderContent.offsetWidth,
elementWidth = logos[0].offsetWidth,
displayed = Math.ceil(contentWidth/elementWidth),
all = logos.length - displayed;
if (logos) {
var count = parseInt(sliderContent.getAttribute('data-count'));
count = ((count + 1) > all) ? 0 : (count + 1);
sliderContent.setAttribute('data-count', count);
// Move the content
var translateVal = count * elementWidth;
sliderContent.style.transform = 'translateX(-'+translateVal+'px)';
}
}
}
var partnersSections = document.querySelectorAll('section.partners-section');
if (partnersSections) {
partnersSections.forEach(function (partnersSection) {
// Auto slider
var interval = parseInt(partnersSection.getAttribute('data-interval'));
if (interval > 1500) {
setInterval((() => showHideLogos(partnersSection)), interval);
}
});
}
});