ho creato un piccolo script per cambiare lo sfondo ad una table

function testata_sfondo(){
if (i==1){
document.getElementById('testata').style.backgroun dImage='url(img/testata_sfondo2.jpg)';
i++;
}
else if (i==2){
document.getElementById('testata').style.backgroun dImage='url(img/testata_sfondo3.jpg)';
i++;
}
else if (i==3){
document.getElementById('testata').style.backgroun dImage='url(img/testata_sfondo.jpg)';
i=1;
}
}

la funzione viene richiamata con l'onclick di un tasto

fin qui tutto bene se non fosse che nel passaggio tra lo testata_sfondo2 e testata_sfondo3 per mezzo secondo lo sfondo rimane vuoto e subito dopo mi fa visualizzare l'immagine giusta...

da cosa dipende?