Responsive Image Gallery

Responsive image gallery with Infinite Scroll using http://masonry.desandro.com/ plugin

HTML

<script src="../js/modernizr-transitions.js"></script>
<div id="container" class="transitions-enabled clearfix">
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpgg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpgg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img src="http://c2.staticflickr.com/8/7218/7209301894_c99d3a33c2_h.jpg"> </div>
  <div class="box"> <img...

CSS

body {
	max-width:96%;
	margin:0 auto;
}
.box {
	width:200px;
}
.box img {
	max-width:100%;
}
#container {
	margin:0 auto;
}
 @media screen and (min-width: 1280px) {
 body {
width:1200px;
}
}

JavaScript

var $container = $('#container');

$container.imagesLoaded( function(){
  $container.masonry({
    itemSelector : '.box',
	isAnimated: !Modernizr.csstransitions,
	isFitWidth: true
  });
});


 $container.infinitescroll({
      navSelector  : '#page-nav',    // selector for the paged navigation 
      nextSelector : '#page-nav a',  // selector for the NEXT link (to page 2)
      itemSelector : '.box',     // selector for all items you'll retrieve
      loading: {
          finishedMsg: 'No more pages to load.',
          img: 'http://i.imgur.com/6RMhx.gif'
        }
      },
      // trigger Masonry as a callback
      function( newElements ) {
        // hide new items while they are loading
        var $newElems = $( newElements ).css({ opacity: 0 });
        // ensure that images load before adding to masonry layout
        $newElems.imagesLoaded(function(){
          // show elems now they're ready
          $newElems.animate({ opacity: 1 });
          $container.masonry( 'appended', $newElems, true ); 
        });
      }
    );