Ciao a tutti!

Volevo chiedevi un aiuto per un problema che mi è capitato testando un sito che sto facendo con il browser internet explorer (sia 7 che 8), mentre con Firefox e Chrome/Safari tutto è ok
Il problema è questo: ho delle immagini nella pagina, quando un utente clicca l'immagine, la pagina si oscura portando in "risalto" l'immagine e due link, che servono per scorrere il resto delle immagini. Mentre l'immagine sta caricando, viene fatta vedere una immagini di "loading".

ora i div su cui lavoro sono (in gerarchia):
codice:
<div id="finestra">
    <div id ="immagine">
        <div id="loading"></div>
        <div id="imgs">
            <div id="immaginebox"></div>
        </div>
    </div>
</div>
le funzioni javascript che genera i diversi div è la seguetne:
codice:
function layout(){
    .
    .
    .
    var fin=document.getElementById("finestra");

    var imm=document.createElement("div");
    imm.setAttribute("id", "immagine");
    imm.setAttribute("align", "center");


    // creo il div loading
    var loaddiv=document.createElement("div");
    loaddiv.setAttribute("id", "loading");
    // aggiungo l'immagine animata dentro loading
    var load=document.createElement("img");
    load.setAttribute("src", "loadingCircle.gif");

    loaddiv.appendChild(load);
    // aggiungo il div loadinf a il div immagine
    imm.appendChild(loaddiv);


    // creo il div imgs
    var imgdiv=document.createElement("div");
    imgdiv.setAttribute("id", "imgs");
    imgdiv.style.display="none";
    // aggiungo il div imgs a il div immagine
    imm.appendChild(imgdiv);

    
    fin.appendChild(chiudi);
    fin.appendChild(imm);
}
fatta la creazione, faccio una richiesta al server (con la tecnica Ajax), per conoscere il percorso dell'immagine.
Quando ho il percorso dell'immagine mostro l'immagine utilizzando queste due funzioni :

codice:
function caricaImmagine(){

    var im=document.getElementById("imgs");

    
    var img=document.createElement("img");
    
    img.setAttribute("id", "immaginebox");
    img.setAttribute("src", vettore3l[1]);  // vettore3l[1] contiene il percorso dell'immagine
    img.onload=function(){img_rid("immaginebox", "600", "600")};
		
    im.appendChild(img);
}

function img_rid(id, largh, alt) {

    //ricavo la larghezza e altezza originali
    var largh_or = document.getElementById(id).width;
    var alt_or = document.getElementById(id).height;

    // se è orrizontale o quadrata
    if(largh_or >= alt_or) {
        var alt_new = alt * alt_or / largh_or;
        document.getElementById(id).width = largh;
        document.getElementById(id).height = alt_new;
    }

    // se è verticale
    else if(alt_or > largh_or) {
        largh_new = largh_or * alt / alt_or;
        document.getElementById(id).width = largh_new;
        document.getElementById(id).height = alt;
    }

    // tolgo l'immagine di loading e faccio vedere l'immagine caricata

    l=document.getElementById("loading");
    l.style.display="none";
    
    
    i=document.getElementById("imgs");
    i.style.display="block";
    //alert("mostro immagine");
}
la seconda funzione mi ridimensiona l'immagine entro certe misure e poi nasconde l'immagine di loading per mostrare l'immagine vera e propria...

Qualcuno può aiutarmi a capire perché internet explorer mi fa vedere l'immagine di loading, poi la toglie ma non mostra l'immagine vera e propria ?