Не отображается контент slick slider

162
29 июля 2018, 05:00

нужно чтобы при нажатии на одну из трёх ссылок появлялся слайдер с товарами. на самом деле он появляется, например если нажать на ссылку "распродажа" а потом покликать в пустой области, где должен быть слайдер, то он появляется. Не получается решить эту проблему, возможно что-то не так в самом js коде

$('.tab__info').hide();
$('.tab__info:first-child').show();
$('.tabs__item').click(function(){
  $('.tab__info').hide();
  var activeTab = $(this).find('a').attr('href');
  $(activeTab).fadeIn();
  return false;
});
$('.tabs__text').slick({
  // vertical: true,
  slidesToShow: 2,
  slidesToScroll: 1,
  arrows: true
});

https://codepen.io/st-iv/pen/aKGLyx

Хотя я пробовал вместо слик слайдера вставлять просто текст и всё было нормально, ничего не пропадало

Answer 1

добавляем вызов слайдера с аргументом setPosition, для того чтобы slick-slider перерасчитал ширину слайдов. т.к. когда инициализируется slick-slider на вкладке с display:none; он принимает ширину контейнера за 0, соответственно ширина слайда = 0.

$('.tabs__item').click(function(){
  $('.tab__info').hide();

  var activeTab = $(this).find('a').attr('href');
  $(activeTab).fadeIn();

setTimeout(function () {
    $('.tabs__text').slick('setPosition');
}, 300);
  return false;
});
READ ALSO
Angular cтилизация <select> и <option>

Angular cтилизация <select> и <option>

Нужно стилизовать select и option по возможности не меняя стуктуры HTMLЭто можно как-то сделать не использую плагины вроде ng2-select и подобных? Для них...

183
Многострочный текст в теге sup

Многострочный текст в теге sup

Задача - задать цену с рублями и копейками в верхнем индексеОднако под копейками должен быть текст баллов

173
Буквы и их размеры

Буквы и их размеры

Как добиться того, чтобы все буквы имели одинаковую ширину?

180
Как правильно задать стили через v-bind во Vue.js?

Как правильно задать стили через v-bind во Vue.js?

Все приветПытаюсь задать ширину для блоков, но почему то не подцепляется

163