If you are placing the elements using a jQuery addin then they won't "snap" into place until the page is loaded and the add-in has had a chance to run.
If you have load time issues then the "snap" issue will be prominent.
So, what I would do in this circumstance is to have all the elements hidden, then have jQuery arrange them, and once the page is loaded, show them.
I know that's a fudge but when i was on your site it took a looooong time to load so unless you can reduce that...
edit
$(function(){
//Your code here. This ensures page is loaded before this is executed
});
edit 2
Also, consider using thumbnails during the load process or reducing the size of your images.
For example, if you click on an image you get the full sized image loaded via ajax but on the home page you should have a thumbnail which will reduce the size of the page and hence load times