Slick.js: 如何删除当前幻灯片?
Slick.js: How to remove current slide?
使用 Slick.js - 我如何删除当前活动的幻灯片?我做了一个例子,但没有任何效果
var $status = $('.pagingInfo');
var $slickElement = $('.slideshow');
$slickElement.on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {
//currentSlide is undefined on init -- set it to 0 in this case (currentSlide is 0 based)
var i = (currentSlide ? currentSlide : 0) + 1;
$status.text(i + '/' + slick.slideCount);
});
$slickElement.slick({
slide: 'img',
speed: 1,
infinite: false,
swipe: false,
autoplay: false,
dots: false
});
$('.remove-slide').on('click', function() {
$slickElement.slick('slickRemove', i);
});
我的 fiddle 在这里 - http://jsfiddle.net/q5yae1t3/9/
您没有在 $(...).on(...)
函数中设置 i
变量。您需要设置 i
才能删除基于 i
的内容。然后您还需要更改所有 data-slick-index
属性,因为当幻灯片计数器更改时这些属性没有更改。
$('.remove-slide').on('click', function() {
i = $("img.slick-active").attr("data-slick-index");
$slickElement.slick('slickRemove', i);
var j = 0;
$("img.slick-slide").each(function(){
$(this).attr("data-slick-index",j);
j++;
});
});
http://jsfiddle.net/q5yae1t3/19/
希望对您有所帮助!
这是单行本。
var currentSlide = $('.slideshow').slick('slickCurrentSlide');
$('.slideshow').slick('slickRemove', currentSlide);
使用 Slick.js - 我如何删除当前活动的幻灯片?我做了一个例子,但没有任何效果
var $status = $('.pagingInfo');
var $slickElement = $('.slideshow');
$slickElement.on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {
//currentSlide is undefined on init -- set it to 0 in this case (currentSlide is 0 based)
var i = (currentSlide ? currentSlide : 0) + 1;
$status.text(i + '/' + slick.slideCount);
});
$slickElement.slick({
slide: 'img',
speed: 1,
infinite: false,
swipe: false,
autoplay: false,
dots: false
});
$('.remove-slide').on('click', function() {
$slickElement.slick('slickRemove', i);
});
我的 fiddle 在这里 - http://jsfiddle.net/q5yae1t3/9/
您没有在 $(...).on(...)
函数中设置 i
变量。您需要设置 i
才能删除基于 i
的内容。然后您还需要更改所有 data-slick-index
属性,因为当幻灯片计数器更改时这些属性没有更改。
$('.remove-slide').on('click', function() {
i = $("img.slick-active").attr("data-slick-index");
$slickElement.slick('slickRemove', i);
var j = 0;
$("img.slick-slide").each(function(){
$(this).attr("data-slick-index",j);
j++;
});
});
http://jsfiddle.net/q5yae1t3/19/ 希望对您有所帮助!
这是单行本。
var currentSlide = $('.slideshow').slick('slickCurrentSlide');
$('.slideshow').slick('slickRemove', currentSlide);