"masonry Image Gallery"
Bootstrap 3.3.0 Snippet by Sagar Joshi

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<!------ Include the above in your HEAD tag ---------->
<div class="container">
<h1>Masonry + imagesLoaded, iteratively reveal items</h1>
<div id="container"></div>
<div id="images">
<div class="item">
<img src="https://picsum.photos/100/200?random=1">
</div>
<div class="item">
<img src="https://picsum.photos/200/300?random=2">
</div>
<div class="item">
<img src="https://picsum.photos/300/400?random=3">
</div>
<div class="item">
<img src="https://picsum.photos/200/100?random=4">
</div>
<div class="item">
<img src="https://picsum.photos/300/200?random=5">
</div>
<div class="item">
<img src="https://picsum.photos/400/300?random=6">
</div>
<div class="item">
<img src="https://picsum.photos/500/500?random=7">
</div>
<div class="item">
<img src="https://picsum.photos/500/600?random=8">
</div>
<div class="item">
<img src="https://picsum.photos/100/300?random=9">
</div>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
body {
font-family: sans-serif;
}
#container {
background: #DDD;
max-width: 1200px;
}
.item {
width: 200px;
float: left;
}
.item img {
display: block;
width: 100%;
}
button {
font-size: 18px;
}
.container{
width:100%;
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$(function () {
var $container = $('#container').masonry({
itemSelector: '.item',
columnWidth: 200
});
// reveal initial images
$container.masonryImagesReveal($('#images').find('.item'));
});
$.fn.masonryImagesReveal = function ($items) {
var msnry = this.data('masonry');
var itemSelector = msnry.options.itemSelector;
// hide by default
$items.hide();
// append to container
this.append($items);
$items.imagesLoaded().progress(function (imgLoad, image) {
// get item
// image is imagesLoaded class, not <img>, <img> is image.img
var $item = $(image.img).parents(itemSelector);
// un-hide item
$item.show();
// masonry does its thing
msnry.appended($item);
});
return this;
};
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Related: See More


Questions / Comments:

How to add zoom like lightbox after click?

Michał Skrobek () - 8 years ago - Reply 0


nhghh

Pham Duyen () - 8 years ago - Reply 0


We are stonemasons from Edinburgh

drskoczy () - 9 years ago - Reply 0