Надо больше информации (HTML-структура слайдера, полный объект опций, версия Glide.js, ошибки в консоли). Но по описанию — когда нажимаешь вправо всё ок, при нажатии влево слайды «исчезают» — типичные причины и способы диагностики/решения:
1. Неправильная HTML-структура / атрибуты управления
- Проверьте, что структура соответствует документации:
.glide > .glide__track[data-glide-el="track"] > ul.glide__slides > li.glide__slide
и кнопки управления используют data-glide-dir="<" и data-glide-dir=">".
- Если кнопки или структура неправильно подписаны, переключение может вести себя некорректно.
2. Отсутствуют CSS-стили Glide
- Если подключили только JS, но не CSS из библиотеки, слайды могут позиционироваться неверно и «уходить» при трансформации.
- Убедитесь, что подключены официальные .css файлы или ваши стили покрывают необходимые правила (.glide__track overflow:hidden и т.д.).
3. Контейнер был скрыт при инициализации (частая причина NaN)
- Если слайдер был невидим (display:none, в табе, аккордеоне) в момент mount(), Glide не может корректно посчитать ширины; при клике transform может стать translateX(NaNpx) — кажется, что слайды исчезли.
- Решение: монтировать/обновлять слайдер после того как контейнер стал видимым: glide.mount() или glide.update() в момент показа, либо вызвать glide.refresh().
4. Неправильные опции (perView, bound, rewind, type)
- Если perView >= количества слайдов и тип carousel, логика клонирования/переключения может работать не так, как ожидается. Попробуйте type: "slider" или включите rewind/bound по необходимости.
- Проверьте, не выставлен ли startAt в некорректное значение.
5. Конфликт CSS (overflow, position, z-index, transform)
- Если .glide__track не имеет overflow:hidden или кто-то перебивает transform/position у внутренних элементов, при смещении слайды могут уйти из видимой области.
- Проверьте в инспекторе, какое значение transform получает .glide__track / .glide__slides при нажатии «влево».
6. Ошибки в консоли
- Посмотрите ошибки/варнинги в DevTools — чаще всего Glide выбрасывает сообщение, если не может посчитать размеры или встретил неожиданные значения.
Как быстро диагностировать
- Откройте DevTools → инспектируйте элемент .glide__track при клике влево; посмотрите computed transform (есть ли NaN или очень большое смещение).
- Попробуйте временно подключить пример-код Glide (официальный demo) на той же странице — если он работает, проблема в вашей разметке/CSS/опциях.
- Попробуйте инициализировать слайдер вручную после небольшого таймаута (если контейнер скрыт при загрузке): setTimeout(() => glide.mount(), 100).
Если хотите, пришлите:
- Полный блок инициализации (все опции),
- HTML-разметку слайдера,
- версию Glide.js и скрин консоли/значения transform после клика — тогда я дам точное решение.