Jquery 引导程序3:关闭模式后在模式窗口中禁用旋转木马

Jquery 引导程序3:关闭模式后在模式窗口中禁用旋转木马,jquery,twitter-bootstrap,bootstrap-modal,Jquery,Twitter Bootstrap,Bootstrap Modal,我在模态窗口内有一个旋转木马。 单击缩略图图像时,会弹出一个模式,并显示相应的旋转木马项目,从而触发整个旋转木马。 我的问题是,一旦模式窗口关闭,旋转木马仍在继续,在所有图像中循环。如果再次单击缩略图,则会显示模式,但会显示两个图像,一个叠在另一个上。 我理解为什么会发生这种情况,当单击缩略图时,我会动态添加“活动”类。因此,第二次启动旋转木马时,两个图像具有“活动”类 我想知道是否有办法完全停用旋转木马。 如果我试图删除“active”类,javascript会从引导carousel函数中抛出

我在模态窗口内有一个旋转木马。 单击缩略图图像时,会弹出一个模式,并显示相应的旋转木马项目,从而触发整个旋转木马。 我的问题是,一旦模式窗口关闭,旋转木马仍在继续,在所有图像中循环。如果再次单击缩略图,则会显示模式,但会显示两个图像,一个叠在另一个上。 我理解为什么会发生这种情况,当单击缩略图时,我会动态添加“活动”类。因此,第二次启动旋转木马时,两个图像具有“活动”类

我想知道是否有办法完全停用旋转木马。 如果我试图删除“active”类,javascript会从引导carousel函数中抛出一个错误,“无法读取未定义的属性‘slice’”。 我试着用“interval:false”调用carousel函数,但没有用

下面是我用来调用模态和旋转木马的代码:

$("#info a").click(function(){
    var thumb = $(this).data('id'); //Get the ID of the thumbnail clicked
    //add class "active" to the corresponding carousel item
    $('#infoCarousel div[class*="item"]').each(function(i){
        if(i == thumb){
            $(this).addClass('active');
        }
    });
    $("#carouselModal").modal('show');//Show the modal window
    //Start the carousel with the proper item
    $("#carouselModal").on('show.bs.modal', function(e){
        $('#infoCarousel').carousel({
            number: thumb
        });
    });
});
这是我在模态关闭后尝试的:

//Once the modal window is closed, remove the "active" class from the last showing item (to prevent double image showing if carousel is fired up right away a second time)
$('#carouselModal').on('hidden.bs.modal', function(){
    $('#infoCarousel').carousel({
        interval: false
    });
    $('#infoCarousel div[class*="active"]').each(function(i){
        $(this).removeClass('active');          
    });
});
如前所述,删除类“active”会抛出一个错误*(阻止传送带的正常行为),并且再次调用传送带“interval:false”不会产生任何效果。 你可以看到它的作用,只需点击信息,然后点击缩略图,然后关闭模式,再次点击缩略图。 任何关于如何解决这个问题的提示都将不胜感激。
谢谢。

没有什么比睡个好觉更能解决问题了。 我的问题是由我在旋转木马的开头部分留下的数据声明引起的,
data ride=“carousel”
这会导致旋转木马在页面加载时启动。一旦取出,我的代码就会按预期运行。 这就是当你复制/粘贴代码,并且没有为你的特定应用程序彻底检查代码时所得到的结果。我对此感到内疚的次数比我愿意承认的要多。 希望这能帮助其他“复制/粘贴者”仔细检查他们粘贴到应用程序中的代码。
干杯!

使用旋转木马的
.carousel('pause')
方法?@cvrebert这是我应该做的一次非常明显的尝试。我想是为了靠近树看森林。但仍然没有用。我得到了相同的错误“无法读取未定义的属性‘切片’”“。在我看来,我需要将旋转木马完全从堆栈中取出,就像它以前从未启动过一样,完成重新初始化。