Javascript 不舔法不起作用
我试图找出为什么在成功的ajax调用后调用unslick方法时,它不起作用。我已经阅读了这篇文章,正在寻找Javascript 不舔法不起作用,javascript,jquery,ajax,slick.js,Javascript,Jquery,Ajax,Slick.js,我试图找出为什么在成功的ajax调用后调用unslick方法时,它不起作用。我已经阅读了这篇文章,正在寻找slick初始化的类,但是我仍然得到了错误 TypeError:.$slides如果(.$slides.parent().hasClass('slick-track'))为空 HTML 功能 function slickCarousel() { $('.skills_section').slick({ infinite: true, slidesToShow: 3,
slick初始化的
类,但是我仍然得到了错误
TypeError:.$slides如果(.$slides.parent().hasClass('slick-track'))为空
HTML
功能
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
幻灯片3
我以前从未见过此错误消息
我将假设stackoverflow示例中的3个“slick cloned”实例只是一个复制/粘贴错误。
如果你真的有“滑头克隆”出现所有这些时间,这是你的错误。
作为过程的一部分,unslick()方法需要删除所有“光滑克隆”幻灯片。
如果它删除了所有幻灯片,那么这就是幻灯片为空的原因
阅读实际js文件的第627行,查看它是否执行以下操作:
我相信你称之为圆滑方法的方式已经改变了 而不是
$('.skills_section')。unslick()代码>
试试$('.skills_section').slick(“unslick”)代码>
您也可以在slick选项中的响应选项内直接调用此函数使用setTimeout初始化slick()
1) 我不明白“我读过这篇文章”指的是什么。2) 无论如何,我无法用您发布的代码()复制您描述的问题。你能用MCVE更新吗?在slick库和您页面中的其他内容之间可能存在某种交互,但我们无法通过您目前显示的内容看到它。您还提到“替换每张幻灯片中的数据”,但您发布的代码没有这样做。也许这个函数对你的结构有什么作用?谢谢你花时间研究这个问题,并制作了一个js提琴。数据肯定会改变(但目前无法显示)。我会仔细看看你做了些什么,看看有没有什么明显的表现
$.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();
}
}
<div id="skills" class="skills_section slick-initialized slick-slider">
<div>Slide 1</div>
<div>Slide 2</div>
<div>Slide 3</div>
</div>
function slickCarousel() {
setTimeout(function(){
$('.skills_section').slick({
infinite: true,
slidesToShow: 3,
slidesToScroll: 1
});
}, 100);
}