50 lines
1.1 KiB
JavaScript
50 lines
1.1 KiB
JavaScript
import Swiper from 'https://cdn.jsdelivr.net/npm/swiper@12/swiper-bundle.min.mjs';
|
|
|
|
export function initHeroSlider() {
|
|
const heroSlider = document.querySelector('.hero-slider');
|
|
|
|
if (!heroSlider) {
|
|
return;
|
|
}
|
|
|
|
const swiper = new Swiper('.hero-slider', {
|
|
// Optional parameters
|
|
loop: true,
|
|
speed: 600,
|
|
effect: 'fade',
|
|
fadeEffect: {
|
|
crossFade: true
|
|
},
|
|
|
|
// Touch/Swipe settings (activé par défaut, mais configuré ici pour optimisation)
|
|
touchRatio: 1,
|
|
touchAngle: 45,
|
|
grabCursor: true,
|
|
simulateTouch: true,
|
|
allowTouchMove: true,
|
|
|
|
// Navigation arrows
|
|
navigation: {
|
|
nextEl: '.swiper-button-next',
|
|
prevEl: '.swiper-button-prev',
|
|
},
|
|
|
|
// Pagination
|
|
pagination: {
|
|
el: '.swiper-pagination',
|
|
clickable: true,
|
|
},
|
|
|
|
// Keyboard control
|
|
keyboard: {
|
|
enabled: true,
|
|
},
|
|
|
|
// Accessibility
|
|
a11y: {
|
|
prevSlideMessage: 'Diapositive précédente',
|
|
nextSlideMessage: 'Diapositive suivante',
|
|
paginationBulletMessage: 'Aller à la diapositive {{index}}',
|
|
},
|
|
});
|
|
}
|