我想解决为什么unslick方法在我成功调用ajax后调用它时不工作。我已阅读this后,我期待为slick-initialized
类,但我仍然得到错误unslick方法不起作用
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>
我有一个Ajax调用,将只需更换每个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更新吗?浮动库和页面中的其他内容之间可能存在某种相互作用,但我们无法看到您迄今为止所展示的内容。您还提到“替换每张幻灯片中的数据”,但您发布的代码并不这样做。也许这个功能对你的结构做了些什么? – Palpatim
感谢您抽出宝贵时间来研究并制作出js小提琴。以及数据肯定会改变(目前不能显示你)。我仔细看看你已经做了什么,看看是否有任何明显的礼物本身 – Richlewis