You need to put the heavy content of your page in a container, a div for example, and the image of loading in another, like this:
<div id="carregando"></div>
<div id="conteudo">
... aqui vai o conteúdo do site ...
</div>
Then you display the div with the image and hide the div with the content.
In document.ready, when the whole document is loaded, you reverse, hide the image and display the content:
<script type="text/javascript">
$('#carregando').show();
$('#conteudo').hide();
$(document).ready( function() {
$('#carregando').hide();
$('#conteudo').show();
});
</script>
The image you arrow in the css, and leave with position: absolute
to position where you want:
#carregando {
background: url("http://i.stack.imgur.com/MnyxU.gif") center no-repeat;
position: absolute;
height: 100%;
widht: 100%
}
Basically that's it.