javascript - BxSlider destroySlider() 函数不工作 : slider undefined or is not a function

标签 javascript jquery bxslider

我使用 bxslider 在轮播中显示了一堆帖子。触发轮播的代码如下所示:

jQuery(document).ready(function() {

var carouselWidth = 640;
var carousel;
var carousel_Config = {
          minSlides: 1,
          maxSlides: 5,
          slideWidth: 285,
          slideMargin: 25,
          controls: false,
          pagerSelector: '.pager'
}

    if( jQuery(window).width() > carouselWidth) {
        carousel = jQuery('.event-carousel').bxSlider(carousel_Config);
    };

    jQuery(window).resize(function() {
        if( jQuery(window).width() > carouselWidth) {
            carousel = jQuery('.event-carousel').bxSlider(ttCarousel_Config);
        } else {
            carousel.destroySlider();
        }
    });

});

很简单,对吧?

问题是 destroySlider() 不起作用:我知道“旋转木马”未定义。如果我尝试使用:

jQuery('.event-carousel').bxSlider().destroySlider();

我试图在 jQuery(document...) 之外声明“carousel” putting var carousel;在脚本的顶部,但我总是在控制台中得到相同的结果:Carousel is undefined。

我该如何解决这个问题?

最佳答案

请你试试下面的代码:

jQuery(document).ready(function() {

var carouselWidth = 640;
var carousel = null;
var carousel_Config = {
          minSlides: 1,
          maxSlides: 5,
          slideWidth: 285,
          slideMargin: 25,
          controls: false,
          pagerSelector: '.pager'
}

    if( jQuery(window).width() > carouselWidth) {
        if(carousel == null)
            carousel = jQuery('.event-carousel').bxSlider(carousel_Config);
    };

    jQuery(window).resize(function() {
        if( jQuery(window).width() > carouselWidth) {
            if(carousel == null)
                carousel = jQuery('.event-carousel').bxSlider(ttCarousel_Config);
            else
                carousel.reloadSlider(); //reloading the slider if already instance present
        } else {
            if(carousel){
                carousel.destroySlider();
                carousel = null;
            }
        }
    });

});

销毁前请检查carousel 对象。这同样适用于初始化 carousel。如果它已经存在,则无需创建/重新初始化轮播。

关于javascript - BxSlider destroySlider() 函数不工作 : slider undefined or is not a function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40399947/

相关文章:

javascript - Asp .Net 服务器上 JavaScript 中的 CSS 样式切换器

javascript - 赋予按钮开/关功能

javascript - 在 IE 中将焦点设置到 iFrame

javascript - BxSlider 缩略图

javascript - 可以将 "listen"设置为 DOM 元素的 CSS 值并告诉另一个 DOM 元素匹配它吗?

Javascript/html 保留 url 参数

javascript - JQuery URL 验证器

javascript - 我应该在 jQuery 的 ajax 成功处理程序中验证响应数据吗?

javascript - 如何使用 jQuery 显示/隐藏事件重新加载 jQuery 幻灯片?

Bxslider 更改幻灯片时移动的 Css 菜单