我想在我的Swiper组件上禁用 onSlideChangeEnd 回调。
如果用户点击箭头然后我想执行我的onSlideChangeEnd回调方法,但是如果我以编程方式想要滑动到特定图像,我不希望调用onSlideChangeEnd。否则我会听到凌乱的监听器循环情况。
我该怎么做?
我在考虑拥有某种旗帜。如果此标志设置为false,则不执行回调代码,如下所示:
galleryTop = new Swiper('.gallery-top-product-view', { //'.gallery-top'
nextButton: '.swiper-button-next',
prevButton: '.swiper-button-prev',
spaceBetween: 10,
onSlideChangeEnd: function (swiper) {
if(someFlag)
doIt();
}
});
但是回调对象似乎引用了旧的变量值。当我像这样使用它时,'someFlag'似乎有点随机:
someFlag= true;
galleryTop.slideTo(key);
someFlag= false;
我是否遗漏了一些关于如何禁用听众的基本内容?
答案 0 :(得分:1)
根据swiper文档(http://www.idangero.us/swiper/api/),您可以将第三个参数runCallbacks
作为false
传递,以防止回调执行:
galleryTop.slideTo(key, speed, false);