Создаю слайдер
if (document.querySelector('.specialists__slider')) {
// Создаем слайдер
new Swiper('.specialists__slider', {
modules: [Navigation], // Подключаем модуль навигации
observer: true,
observeParents: true,
slidesPerView: 1,
spaceBetween: 25,
centeredSlides: true,
loop: true,
speed: 800,
// Адаптивные настройки
breakpoints: {
992: {
slidesPerView: 3,
spaceBetween: 25,
},
767: {
slidesPerView: 2,
spaceBetween: 25,
},
},
// Кнопки "влево/вправо"
navigation: {
prevEl: '.swiper-button-prev',
nextEl: '.swiper-button-next',
},
// События
on: {
slideChange: updateSpecialistInfo,
},
});
}
}
// Функция для обновления информации о специалисте
function updateSpecialistInfo() {
const activeSlide = document.querySelector('.specialists__slider .swiper-slide-active');
// Проверка наличия активного слайда
if (activeSlide) {
const name = activeSlide.getAttribute('data-name');
const position = activeSlide.getAttribute('data-position');
const phrase = activeSlide.getAttribute('data-phrase');
// Логирование для проверки данных
console.log('Активный слайд данные:', { name, position, phrase });
// Обновляем текстовые блоки
document.querySelector('.specialists__name').textContent = name || 'Имя не указано';
document.querySelector('.specialists__position').textContent = position || 'Должность не указана';
document.querySelector('.specialists__quote').textContent = phrase || 'Цитата не указана';
} else {
console.error('Активный слайд не найден');
}
}
суть чтоб у активного слайда брались атрибуты и подставлялись в блоки , подписи активного слайда, но при инициализации слайдера
выходит много событий, хотя я не переключаю слайдер, на страниц есть еще 2 слайдера, но у меня же именно в этом завязана эта фукция, что то не так написал?