Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How should I change carousel indicator dots to thumbnails images?

 <ol class="carousel-indicators">
 <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
 <li data-target="#carousel-example-generic" data-slide-to="1"></li>
 <li data-target="#carousel-example-generic" data-slide-to="2"></li>
 <li data-target="#carousel-example-generic" data-slide-to="3"></li>    
 <li data-target="#carousel-example-generic" data-slide-to="3"></li>    
 </ol>              

This is my current carousel dots form below my carousel slideshow, I found it very hard to change it to thumbnail version of my slide show images. May I know what should I change in my body page or bootstrap.js?

like image 483
Tom Avatar asked Dec 19 '25 20:12

Tom


1 Answers

Instead of changing the existing carousel-indicators, you can use jQuery to update a row of thumbnails when the carousel slides..

Demo: http://bootply.com/79859

<div class="container">

    <!-- thumb navigation carousel -->
    <div class="col-md-12 hidden-sm hidden-xs" id="slider-thumbs">

        <!-- thumb navigation carousel items -->
        <ul class="list-inline">
            <li>
                <a id="carousel-selector-0" class="selected">
                    <img src="http://placehold.it/80x60&amp;text=one" class="img-responsive">
                </a>
            </li>
            <li>
                <a id="carousel-selector-1">
                    <img src="http://placehold.it/80x60&amp;text=two" class="img-responsive">
                </a>
            </li>
            <li>
                <a id="carousel-selector-2">
                    <img src="http://placehold.it/80x60&amp;text=three" class="img-responsive">
                </a>
            </li>
            <li>
                <a id="carousel-selector-3">
                    <img src="http://placehold.it/80x60&amp;text=four" class="img-responsive">
                </a>
            </li>
            <li>
                <a id="carousel-selector-4">
                    <img src="http://placehold.it/80x60&amp;text=five" class="img-responsive">
                </a>
            </li>
            <li>
                <a id="carousel-selector-5">
                    <img src="http://placehold.it/80x60&amp;text=six" class="img-responsive">
                </a>
            </li>
            ... more thumbnails
        </ul>

    </div>


    <!-- main slider carousel -->
    <div class="row">
        <div class="col-md-12" id="slider">

            <div class="col-md-12" id="carousel-bounding-box">
                <div id="myCarousel" class="carousel slide">
                    <!-- main slider carousel items -->
                    <div class="carousel-inner">
                        <div class="active item" data-slide-number="0">
                            <img src="http://placehold.it/1200x480&amp;text=one" class="img-responsive">
                        </div>
                        <div class="item" data-slide-number="1">
                            <img src="http://placehold.it/1200x480/888/FFF" class="img-responsive">
                        </div>
                        <div class="item" data-slide-number="2">
                            <img src="http://placehold.it/1200x480&amp;text=three" class="img-responsive">
                        </div>
                        <div class="item" data-slide-number="3">
                            <img src="http://placehold.it/1200x480&amp;text=four" class="img-responsive">
                        </div>
                        <div class="item" data-slide-number="4">
                            <img src="http://placehold.it/1200x480&amp;text=five" class="img-responsive">
                        </div>
                        ... more items
                    </div>
                    <!-- main slider carousel nav controls --><a class="carousel-control left" href="#myCarousel" data-slide="prev">‹</a>

                    <a class="carousel-control right" href="#myCarousel" data-slide="next">›</a>
                </div>
            </div>

        </div>
    </div>
    <!--/main slider carousel-->
</div>

The JS can be simplified using the data-slide-to attribute, instead of the jQuery click event: http://www.bootply.com/JiuFTQf9rI

like image 59
Zim Avatar answered Dec 22 '25 11:12

Zim



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!