禁用onSlideChangeEnd侦听器

时间:2016-02-08 14:49:49

标签: javascript swiper

我想在我的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;

我是否遗漏了一些关于如何禁用听众的基本内容?

1 个答案:

答案 0 :(得分:1)

根据swiper文档(http://www.idangero.us/swiper/api/),您可以将第三个参数runCallbacks作为false传递,以防止回调执行: galleryTop.slideTo(key, speed, false);