0

我正在尝试使用 Bootstrap carousel 和 Modal 创建一个简单的灯箱。请看一下我在这里的示例文件

我想做的是启动模态轮播作为主轮播的同一幻灯片(当前幻灯片)。正如您从示例中看到的那样,当我启动 Modal 时,它只是从第一项开始,但我需要从当前活动幻灯片开始。

你能告诉我怎么做吗?

<div class="container">
<div class="well span9 columns">
    <div id="myCarousel" class="carousel slide">
        <div class="carousel-inner">
            <div class="item active">
                <a href=".bell" data-toggle="modal"><img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-01.jpg" alt=""/></a>
            </div>
            <div class="item">
                <img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-02.jpg" alt=""/>
            </div>
            <div class="item">
                <img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-03.jpg" alt=""/>
            </div>
        </div>
        <a class="left carousel-control" href="#myCarousel" data-slide="prev">‹&lt;/a>
        <a class="right carousel-control" href="#myCarousel" data-slide="next">›&lt;/a>
    </div>
    <!-- Modal -->
    <div id="bell" class="modal hide fade bell" aria-hidden="true">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h3 id="myModalLabel">Modal header</h3>
        </div>
        <div class="modal-body">
            <div id="myCarousel2" class="carousel slide">
                <div class="carousel-inner">
                    <div class="item active">
                        <img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-01.jpg" alt=""/>
                    </div>
                    <div class="item">
                        <img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-02.jpg" alt=""/>
                    </div>
                    <div class="item">
                        <img src="http://bootstrapdocs.com/v2.0.3/docs/assets/img/bootstrap-mdo-sfmoma-03.jpg" alt=""/>
                    </div>
                </div>
                <a class="left carousel-control" href="#myCarousel2" data-slide="prev">‹&lt;/a>
                <a class="right carousel-control" href="#myCarousel2" data-slide="next">›&lt;/a>
            </div>
        </div>
        <div class="modal-footer">
            <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
        </div>
    </div>
    <div class="btn-group" data-toggle="buttons-radio">
        <button type="button" class="btn btn-inverse"><a href=".bell" data-toggle="modal"><i class="icon-resize-full icon-white"></i></a>
        </button>
    </div>
</div>

坦斯克

4

1 回答 1

1

这似乎有效。

$('.bell').on('show', function() {
    var targetSlide = parseInt($('#myCarousel .active').index('#myCarousel .item'));
    $('#myCarousel2').carousel(targetSlide);
});

这将获取显示在主轮播上的当前索引。

$('#myCarousel .active').index('#myCarousel .item')

这将设置模态轮播的当前幻灯片。

$('#myCarousel2').carousel(/*Number here*/);

这是一个带有上述代码的 jsFillde 。

于 2013-07-25T20:12:29.007 回答