2

我有一个刷卡器,我希望能够动态切换progress参数(我正在使用swiper-smooth-progress插件)。

我像这样初始化了swiper:

var mySwiper = $('.swiper-container').swiper({
   progress: false;    //slides just slide horizontally
});

此时 swiper-smooth-progress 插件没有启用,所以幻灯片是从右向左滑动的。到目前为止,一切都很好。

但是,在更改progress参数后:

var newValue = true;
mySwiper.params.progress = newValue;
mySwiper.reInit();

幻灯片不会随着新效果移动。progress通过查看mySwiper.params.progress并看到它是 now ,我已经验证了是用新参数设置的true。那么问题来了:新的进度效果是可以动态实现的,还是需要销毁slilder,用新的参数新建一个?

4

1 回答 1

1

reInit()看不到进度插件。

当您progress = true在第一个实例中设置时,一切正常,但是当您将其设置为 false 并重新初始化时,它不会初始化进度。

您可以通过将其设置为 true 来测试它,然后:

console.log(mySwiper.progress) 

您将看到 swiper 当前进度的值。

如果您将其设置为 false,然后尝试相同的控制台日志,您将不会得到一个数字。

这个插件有一些根深蒂固的问题,它本身也不监听进度更新。也许联系创作者

于 2015-01-20T11:25:07.523 回答