BX Slider:如何在仅有一张图片时禁用幻灯片播放

6

我正在使用bxslider创建我的图片幻灯片,这些图片是动态更新的。我的问题是即使只有一个图片存在,幻灯片仍然会进行淡入淡出。我该如何解决这个问题?

bxslider的选项为

   var coverSlider = $('.bxslider').bxSlider({
        auto: true,
        minSlides: 1,
        maxSlides: 1,
        pager: false,
        speed: 500,
        pause: 3000,
        autoHover: true,
        mode: 'fade',
        controls: false
   })

我正在使用reload方法,在添加或删除新图片时更新滑块。
 coverSlider.reloadSlider();

我可以告诉你的方法,首先尝试获取图像计数,如果它增加或减少,则在其中执行if(ISImageUpdated) {coverSlider.reloadSlider();}。 - Anto king
6个回答

14

这有助于我:

$(document).ready(function(){
  $('.bxslider').bxSlider({
    mode: 'fade',
    auto: ($(".bxslider li").length > 1) ? true: false,
    pager: ($(".bxslider li").length > 1) ? true: false,
    controls: false
  });
});

5

在重新加载前,您应该检查图像数量,并且如果只有1个图像,则使用destroySlider()方法。

// Get the quantity of images (add your code if you want an example)
var numberOfImages = ...;

if (numberOfImages > 1) {
    coverSlider.reloadSlider();
} else {
    coverSlider.destroySlider();
}

0

0
尝试一下
var numImgs = $('div.myClassName img').length;
if(numImgs>1)
{
\\Do your bxslider reload here
}

你也可以像下面这样使用Jquery选择器

jQuery(".image").Length

希望这可以帮到你...
点击这里阅读有关选择器的内容 点击

0
var numImgs = $('div.bxslider img').length;
if (numImgs > 1) {
    $('.bxslider ').bxSlider({
        controls: true,
        ...
    });
}

0

bx slider:当只有一张图片时如何禁用幻灯片播放?

将auto设置为false:

   var coverSlider = $('.bxslider').bxSlider({
        auto:false
   })

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接