我创建了一个徽标滑块,显示类似于选框。 我想要做的是添加下一个/上一个箭头,可以在点击下一个箭头时加快滑块的速度,并在单击上一个箭头时反转滑块。我目前使用光滑的轮播来制作它。
另外我不知道为什么有时我的旋转木马暂停一秒然后继续,有人可以帮我这个吗?
$(document).ready(function($) {
$('.marquee-logo').slick({
autoplay: true,
infinite: true,
autoplaySpeed: 0,
slidesToScroll: 1,
slidesToShow: 5,
arrows: false,
cssEase: 'linear',
speed: 6500,
initialSlide: 1,
draggable: false,
});
});
<div class="marquee-logo">
<div class="slider-logo">
<img src="http://placehold.it/350x150">
</div>
<div class="slider-logo">
<img src="http://placehold.it/350x150">
</div>
<div class="slider-logo">
<img src="http://placehold.it/350x150">
</div>
<div class="slider-logo">
<img src="http://placehold.it/350x150">
</div>
<div class="slider-logo">
<img src="http://placehold.it/350x150">
</div>
</div>
答案 0 :(得分:3)
这可用于使滑块缓慢
$("#slowbutton").click(function(){
$('.marquee-logo').slick('unslick');
$('.marquee-logo').slick({
autoplay: true,
infinite: true,
autoplaySpeed: 0,
slidesToScroll: 1,
slidesToShow: 5,
arrows: false,
cssEase: 'linear',
speed: 10000,
initialSlide: 1,
draggable: false,
});});
这样做更快
$("#nextbutton").click(function(){
$('.marquee-logo').slick('unslick');
$('.marquee-logo').slick({
autoplay: true,
infinite: true,
autoplaySpeed: 0,
slidesToScroll: 1,
slidesToShow: 5,
arrows: false,
cssEase: 'linear',
speed: 300,
initialSlide: 1,
draggable: false,
});
});
http://codepen.io/anon/pen/yawgra
在按钮上单击首先销毁滑块并以增加/减少的速度再次添加滑块
您也可以尝试使用此$('.marquee-logo').slick('slickSetOption', 'speed', 500,true);
而不破坏滑块
但是,通过slickSetOption方法进行速度更改会导致延迟:问题https://github.com/kenwheeler/slick/issues/2334
答案 1 :(得分:0)
用户XZY的答案对我有用。在使用它时,我还注意到slick
(至少在我使用的实现中)公开了options
属性,该属性是可修改的。所以下面的方法也可以工作:
var slickSlider = $('.marquee-logo')[0]
slickSlider.slick.options.autoplaySpeed = 500