Я пытаюсь понять, почему метод unslick не работает, когда я вызываю его после успешного вызова ajax. Я прочитал this пост, и я ищу для slick-initialized
класса, но я все еще получаю ошибкуunlick метод не работает
TypeError: .$slides is null if (.$slides.parent().hasClass('slick-track'))
HTML
<div id="skills" class="skills_section">
<div>Slide 1</div>
<div>Slide 2</div>
<div>Slide 3</div>
</div>
Когда я инициализировать пятно на странице загрузки разметки будет выглядеть следующим образом:
<div id="skills" class="skills_section slick-initialized slick-slider">
<div class="slick-list draggable">
<div class="slick-track">
<div class="slick-slide slick-cloned">Slide 1</div>
<div class="slick-slide slick-cloned">Slide 2</div>
<div class="slick-slide slick-cloned">Slide 3</div>
</div>
</div>
</div>
у меня есть АЯКС вызов, который будет просто заменить данные в каждом slick-slide
$.ajax({
type: 'get',
url: '/public/index',
dataType: 'script',
data: data_send,
success: function(data) {
unSlickCarousel();
slickCarousel();
}
});
Функции
function slickCarousel() {
$('.skills_section').slick({
infinite: true,
slidesToShow: 3,
slidesToScroll: 1
});
}
function unSlickCarousel() {
if($('#skills').hasClass('slick-initialized')){
$('.skills_section').unslick();
}
}
Но, как я уже говорил, я получаю ошибку и HTML разметка выглядит следующим образом
<div id="skills" class="skills_section slick-initialized slick-slider">
<div>Slide 1</div>
<div>Slide 2</div>
<div>Slide 3</div>
</div>
1) Я не вижу, что означает «Я прочитал этот пост». 2) В любом случае я не могу воспроизвести описанную вами проблему с кодом, который вы опубликовали (http://jsfiddle.net/Palpatim/ezcot8o3/). Можете ли вы обновить MCVE? Может быть какое-то взаимодействие между библиотекой slick и чем-то еще на вашей странице, но мы не можем видеть это с тем, что вы показали до сих пор. Вы также упоминаете «замену данных в каждом слайде», но код, который вы опубликовали, не делает этого. Может быть, эта функция что-то делает для вашей структуры? – Palpatim
Спасибо, что нашли время, чтобы посмотреть на это и создать скрипку js. ну, данные, безусловно, меняются (пока не показывают вас). Я больше погляжу на то, что вы сделали, и посмотрите, есть ли что-то очевидное. – Richlewis