Files
Minecraft-Modern-Theme/Minecraft-Modern-Theme/js/slider-init.js
2026-03-29 22:27:20 +02:00

50 lines
1.5 KiB
JavaScript

document.addEventListener('DOMContentLoaded', function() {
const heroSlider = document.querySelector('.hero-slider');
if (!heroSlider) return;
// BUG-FIX: sliderSettings wird via wp_localize_script gesetzt. Fehlt es
// (z.B. wegen Caching oder falschem Enqueue), würde ein ReferenceError
// den gesamten Slider-Init abschießen.
if (typeof sliderSettings === 'undefined') {
console.warn('Minecraft Modern Theme: sliderSettings nicht gefunden. Slider wird nicht initialisiert.');
heroSlider.classList.add('swiper-initialized'); // Opacity-Fix trotzdem aufheben
return;
}
const swiperConfig = {
effect: 'fade',
fadeEffect: {
crossFade: true
},
loop: sliderSettings.loop === '1',
autoplay: {
delay: 5000,
disableOnInteraction: false,
},
pauseOnMouseEnter: true,
navigation: sliderSettings.hideArrows !== '1' ? {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
} : false,
pagination: sliderSettings.hidePagination !== '1' ? {
el: '.swiper-pagination',
clickable: true,
} : false,
on: {
init: function () {
setTimeout(function() {
heroSlider.classList.add('swiper-initialized');
}, 50);
},
},
};
new Swiper('.hero-slider', swiperConfig);
});