javascript - Javascript slider 添加/删除功能,不删除第一张幻灯片

  显示原文与译文双语对照的内容
0 0

我已经看过这个网站了几年,但只是现在遇到了一个问题,无法通过阅读它的他的答案。

我觉得我的问题是一个简单的解决方法,但是我有一个原因是因为某个原因。

我有一个'平滑'slider 添加和删除幻灯片,在未来我希望使第一张幻灯片成为undeletable上传表单。 每次上传将生成一个新幻灯片。 删除该上传将删除特定的幻灯片。

My是 not slide slide slide paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid paid 。 ( 抱歉,如果违反规则的话)

这是我的代码希望这是你所需要


$(document).ready(function() {

 $('.add-remove').slick({
 dots: true,
 slidesToShow: 1,
 speed: 500,
 slidesToScroll: 1
 });
 var slideIndex = 1;
 $('.js-add-slide').on('click', function() {
 slideIndex++;
 $('.add-remove').slick('slickAdd','<div><h3>' + slideIndex + '</h3></div>');
 });

 $('.js-remove-slide').on('click', function() {
 $('.add-remove').slick('slickRemove', slideIndex - 1);
 if (slideIndex!== 0){
 slideIndex--;
 }
 });

});

时间: 原作者:

0 0

你所说的slideIndex 不是索引,而是幻灯片的数目。 这意味着你总是要删除最后一张幻灯片。 slideCount 将是一个更合适的名称。 要限制删除并仅使用 delete,可以执行以下操作:


var slideCount = 0, slideSequence = 0;

$('.js-remove-slide').on('click', function() {
 var slideIndex = $('.slick-slide.slick-active').data('slick-index');
 if (slideIndex!= 0){
 $('.add-remove').slick('slickRemove', slideIndex);
 slideCount--;
 }
});

$('.js-add-slide').on('click', function() {
 slideCount++;
 $('.add-remove').slick('slickAdd','<div><h3>' + slideSequence + '</h3></div>');
 slideSequence++;
});

添加可以能会在最后添加一个新幻灯片,这取决于 slickAdd的实现,即使删除了某些东西。

原作者:
0 0

在这种情况下,我会检查片的长度,如果长度大于 1,则只检查 delete 。

像这样的东西应该能工作


if ($(".slick-slide").length> 1) {
//deletion code
}

原作者:
...