This issue will be fixed in version 1.7. But you can sort it manually by…
Place this after the $(function() { in the onload.js
// $('#content-with-images').imagesLoaded( myFunction )
// execute a callback when all images inside a parent have loaded.
// needed because .load() doesn't work on cached images
// Useful for Masonry or Isotope, triggering dynamic layout
// after images have loaded:
// $('#content').imagesLoaded( function(){
// $('#content').masonry();
// });
// mit license. paul irish. 2010.
// webkit fix from Oren Solomianik. thx!
// callback function is passed the last image to load
// as an argument, and the collection as `this`
$.fn.imagesLoaded = function(callback){
var elems = this.find('img'),
len = elems.length,
_this = this;
elems.bind('load',function(){
if (--len <= 0){
callback.call( _this );
}
}).each(function(){
// cached images don't fire load sometimes, so we reset src.
if (this.complete || this.complete === undefined){
var src = this.src;
// webkit hack from http://groups.google.com/group/jquery-dev/browse_thread/thread/eee6ab7b2da50e1f
// data uri bypasses webkit log warning (thx doug jones)
this.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";
this.src = src;
}
});
return this;
};
then change replace this:
$wall.masonry({
columnWidth: 50,
// only apply masonry layout to visible elements
itemSelector: '.box:not(.invis)',
animate: true,
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
with this
$wall.imagesLoaded( function(){
$wall.masonry({
columnWidth: 50,
// only apply masonry layout to visible elements
itemSelector: '.box:not(.invis)',
animate: true,
animationOptions: {
duration: 750,
easing: 'linear',
queue: false
}
});
});