@drtvader
Вечный студент

Почему настройки слайдера включаются после перезагрузки?

Добрый день! Почему настройки для слайдера для разных разрешений включаются только после перезагрузки браузера?
function carousel_company() {
    var window_width = $(window).width();

    if (window_width > 992) {
        $('.js-brand-carousel-company').slick({
          arrows: false,
          slidesToShow: 3,
          slidesToScroll: 3
        });
        console.log(window_width)
    } else if (window_width <= 991) {
        $('.js-brand-carousel-company').slick({
            dots: true,
            slidesToShow: 1,
            slidesToScroll: 1,
        });
    }
}

$(document).ready(function(){
    carousel_company();
});
  • Вопрос задан
  • 697 просмотров
Решения вопроса 2
У слик есть настройка адаптивности вообще-то
$('#recomendationsSlider').slick({
			autoplay: false,
			slidesToShow: 4,
			arrows: true,
			dots:false,
			lazyLoad: 'ondemand',
			responsive: [
		    {
		      breakpoint: 1200,
		      settings: {
		        slidesToShow: 3,
		        slidesToScroll: 3,
		        infinite: true,
		      }
		    },
		    {
		      breakpoint: 992,
		      settings: {
		        slidesToShow: 2,
		        slidesToScroll: 2
		      }
		    },
		    {
		      breakpoint: 580,
		      settings: {
		        slidesToShow: 1,
		        slidesToScroll: 1
		      }
		    }
		    // You can unslick at a given breakpoint now by adding:
		    // settings: "unslick"
		    // instead of a settings object
		  ],
		  nextArrow: $('.arrow-right'),
		  prevArrow: $('.arrow-left'),
		});
Ответ написан
@drtvader Автор вопроса
Вечный студент
Всё проще оказалось!
$('.js-brand-carousel-company').slick({
    arrows: false,
    slidesToShow: 3,
    slidesToScroll: 3,
    responsive: [
        { breakpoint: 992,
            settings: {
                dots: true,
                slidesToShow: 1,
                slidesToScroll: 1,
        }},
    ]
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
dmitrykaryakin
@dmitrykaryakin
Верстальщик - Программист - Дизайнер
Потому, что функция carousel_company() запускается 1 раз при загрузке страницы. Чтобы она срабатывала каждый раз при изменении размера нужно повесить на событие resize для объекта window. https://api.jquery.com/resize/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы