Esta é uma solução rápida para a maioria dos casos:
CSS:
.iframe-loading {
background:url(/img/loading.gif) center center no-repeat;
}
Você pode usar um GIF animado de carregamento se quiser,
HTML:
<div class="iframe-loading">
<iframe src="http://your_iframe_url_goes_here" onload="$('.iframe-loading').css('background-image', 'none');"></iframe>
</div>
Usando o evento onload, você pode remover a imagem de carregamento depois que a página de origem for carregada em seu iframe.
Se você não estiver usando jQuery, apenas coloque um id no div e substitua esta parte do código:
$('.iframe-loading').css('background-image', 'none');
por algo assim:
document.getElementById("myDivName").style.backgroundImage = "none";
Muito bem sucedida!