- Thumbnails of each image as the indicators.
- Hovering over images highlights the fact that you can click on them.
- Clicking on an image will display them in a modal window.
The solution lies below with areas of interest highlighted in red.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap thumbnail gallery</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
<style>
img
{
width:6em;
}
img:hover
{
opacity: 0.4;
filter: alpha(opacity=40);
}
#exampleModal > div.modal-dialog > div > div.modal-body > img, #carousel-example-generic > div.carousel-inner > div.item > img
{
width:100%;
}
#carousel-example-generic > ol.carousel-indicators > img, #carousel-example-generic > ol.carousel-indicators > img.active
{
width:2em;
}
#carousel-example-generic > ol.carousel-indicators > img.active
{
height:3em;
}
</style>
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="row">
<div class="container">
<div class="col-md-4">
<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
<!-- Start of Indicators -->
<ol class="carousel-indicators">
<img src="derek.jpg" data-target="#carousel-example-generic" data-slide-to="0" class="active">
<img src="jimmy.jpg" data-target="#carousel-example-generic" data-slide-to="1">
<img src="peter.jpg" data-target="#carousel-example-generic" data-slide-to="2">
<img src="johnnie.jpg" data-target="#carousel-example-generic" data-slide-to="3">
<img src="steve.jpg" data-target="#carousel-example-generic" data-slide-to="4">
<img src="mick.jpg" data-target="#carousel-example-generic" data-slide-to="5">
</ol>
<!-- End of Indicators -->
<!-- Start of Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="derek.jpg" alt="Derek" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
<div class="item">
<img src="jimmy.jpg" alt="Jimmy" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
<div class="item">
<img src="peter.jpg" alt="Peter" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
<div class="item">
<img src="johnnie.jpg" alt="Johnnie" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
<div class="item">
<img src="steve.jpg" alt="Steve" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
<div class="item">
<img src="mick.jpg" alt="Mick" data-toggle="modal" data-target="#exampleModal">
</div><!-- .item -->
</div><!-- .carousel-inner -->
<!-- End of Wrapper for slides -->
<!-- Start of Controls -->
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
<!-- end of Controls -->
</div><!-- #carousel-example-generic -->
</div>
<aside class="col-md-8">
</aside>
</div>
</div>
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title"></h4>
</div>
<div class="modal-body"></div>
<div class="modal-footer"></div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
<script>
(function()
{
$('#exampleModal').on('show.bs.modal', function (event)
{
var img = $(event.relatedTarget);
var alt = img.attr('alt');
var src = img.attr('src');
var modal = $(this);
modal.find('.modal-title').text(alt);
modal.find('.modal-body').html('<img src="'+src+'" />');
});
})();
</script>
</body>
</html>