allora ho fatto una prova... ho creato due textbox:
alla prima assegno gli stili in maniera statica inserendoli nell'head del documento: così:
#prova2{background-color:red;}
#prova2:focus{background-color:yellow;}
#prova2:hover{background-color:blue;}

alla seconda invece assegno gli stessi stili, ma tramite jquery (funziona prova() che ho postato sopra).

In teoria il risultato delle due textbox deve essere il medesimo, pero non è
così.
ora elenco differenze ed uguaglianze tra le due textbox.

La textbox a cui ho applicato gli stili tramite l'head ha il seguente comportamento ("presumo quello corretto"):
-sfondo rosso per lo stato di default
-al passaggio sopra del mouse, ma senza cliccare lo sfondo diventa blu
-se dò il focus e lascio il mouse all'interno lo sfondo è sempre blue
-se esco dalla textbox col mouse, ma il focus è attivo diventa giallo
-se clicco all'esterno della textbox torna rosso (come da default).

La textbox a cui ho applicato gli stili tramite jQuery ha questo comportamento ("presumo sbagliato"):
-sfondo rosso per lo stato di default
-al passaggio sopra del mouse, ma senza cliccare lo sfondo diventa blu
-se dò il focus e lascio il mouse all'interno lo sfondo è giallo (invece che blu)
-se esco dalla textbox col mouse, ma il focus è attivo diventa rosso (invece che giallo)
-se clicco all'esterno della textbox torna rosso (come da default).

Ho contrassegnato le differenze con il grassetto e sottolineo... probabilmente sbaglio nell'assegnazione degli stili nella funzione prova()... pero non so come uscirne...