0

I'm working on a jQuery Isotope implementation but the animation only seems to 'wake-up' once the browser is resized both on laptop and mobile. Perhaps my ordering is wrong? Here's the site that I'm working on:

http://rgbdrinks.squarespace.com/

If you are able to work out why the mobile implementation isn't great that would be awesome too but I realise that is probably a world of pain to get into.

Many many thanks for your help in advance,

Andrew


Here's the code:

<div id="container">

<div class="item"><div id="squarespace-slideshow-wrapper-1371031439" rel="51b847e2e4b0552c3a104be5" class="ss-slideshow-v2"></div><p>This is a test</p></div>
<div class="item"><img style="width: 150px;" src="/picture/drink%20pour%203.jpg?pictureId=18133348&amp;asGalleryImage=true&amp;__SQUARESPACE_CACHEVERSION=1370962041640" alt="" /></div>
<div class="item"><img style="width: 150px;" src="/picture/martini%20glass%20splash.jpg?pictureId=18133349&amp;asGalleryImage=true&amp;__SQUARESPACE_CACHEVERSION=1370962058097" alt="" /></div>
<div class="item"><img style="width: 150px;" src="/picture/tablecloth.jpg?pictureId=18133350&amp;asGalleryImage=true&amp;__SQUARESPACE_CACHEVERSION=1370962092184" alt="" /></div>
<div class="item"><div id="squarespace-slideshow-wrapper-1370943850" rel="51b6f18ae4b0877f36bb6468" class="ss-slideshow-v2"></div></div>
<div class="item"><div id="squarespace-slideshow-wrapper-1371031528" rel="51b84800e4b0552c3a104be6" class="ss-slideshow-v2"></div></div>
<div class="item"><div id="squarespace-slideshow-wrapper-1371031555" rel="51b8481be4b0552c3a104be7" class="ss-slideshow-v2"></div></div>
<div class="item"><div id="squarespace-slideshow-wrapper-1371031585" rel="51b8483ee4b0552c3a104be8" class="ss-slideshow-v2"></div></div>

</div>


<script src="http://rgbdrinks.squarespace.com/storage/isotope/js/jquery-1.7.1.min.js"></script>
<script src="http://rgbdrinks.squarespace.com/storage/isotope/js/jquery.isotope.min.js"></script>
<script src="http://rgbdrinks.squarespace.com/storage/isotope/js/fake-element.js"></script>


<script>

var $container = $('#container')

// initialize Isotope

$container.isotope({

  // options...

  resizable: false,
  itemSelector : '.item',
  animationEngine : 'best-available',

  // set columnWidth to a percentage of container width

  masonry: { columnWidth: $container.width() / 5 }

});

  // update columnWidth on window resize

  $(window).smartresize(function(){
    $container.isotope({

    // update columnWidth to a percentage of container width

    masonry: { columnWidth: $container.width() / 6 }

  });
});

</script>
Jack
  • 313
  • 5
  • 22

2 Answers2

0

Well I had the exact same problem and I discovered it was being caused by Firebug. Once I closed firebug it worked fine.

Mark B
  • 1
  • Hi Mark, thanks for the clue, but I've deleted Firebug and am still having the same problem. – Jack Sep 09 '13 at 13:49
0

I just took a look at Andrew's site and noticed he had solved the problem by calling

jQuery(window).load(
    function()
    { jQuery
        ('#blog-wrap').isotope
            (
                { itemSelector: 'article', layoutMode : 'masonry' }
            );
    }
);

Of course you'll have to substitute #blog-wrap and article with your own classes and/or element names (and/or element IDs).

I've successfully used this method to solve the same problem with my site too.

Stephan Muller
  • 27,018
  • 16
  • 85
  • 126
Alpi Murányi
  • 1,117
  • 10
  • 17