1

我是第一次使用 Nivo Slider,它非常棒,但是我确实有几个问题。

我将它集成在一个 CMS 中,这允许用户添加多达 5 个图像。

但是,如果只有一张图像,我只想隐藏缩略图并停止任何过渡,就像一次又一次地滑动相同的图像一样。

现在这是我会用 JQuery 做的事情,还是应该编辑“jquery.nivo.slider.js”文件?或者这可能是我可能在两者中都可能实现的事情?

我想我想做类似的事情:

if images < 1 {
 transition = false;
 thumbnails = hide;
}

希望这是有道理的。

感谢您的时间和帮助。

更新

好的,如果只有一个图像,我已经设法通过将以下内容添加到 jquery.nivo.slider.js 文件来隐藏缩略图:

if (vars.totalSlides < 2)
{
 $('.nivo-controlNav').remove();
}

我现在希望能够根据相同的规则更改以下代码中的设置之一,但不确定如何执行此操作:

$.fn.nivoSlider.defaults = {
    pauseOnHover: 'false',
    ......
}
4

2 回答 2

0

我会更改配置数组并像这样初始化滑块:

// nivo config array
var nivoConfig = {
    slices: 30, // For slice animations
    boxCols: 16, // For box animations
    // put all your init config here but exclude 'effects'
}

if(imagesCount < 2) {
    nivoConfig['effects'] = 'none';
} else {
  nivoConfig['effects'] = 'random';
}

$('#slider').nivoSlider(nivoConfig); 

试试看,它应该以这样的方式工作。

于 2012-11-26T20:00:35.987 回答
0

我遇到了同样的问题;Johnny 的代码运行良好,但我想为可能对此有问题的人进行详细说明。您需要插入:

 if (vars.totalSlides < 2) {
    $('.nivo-controlNav').remove();
}

在 jquery.nivo.slider.js 文件的第 158 行或附近(在 if(settings.controlNav) {} 条件下)。否则它将无法正常工作。

于 2013-06-05T18:53:30.927 回答