La cosa è in effetti strana...frames è una proprietà dell'oggetto document che rappresenta l'array di tutti i frames (ovvero degli iframes) presenti nel documento ed è implementata solo in IE. Quindi è un po' anomalo che con IE non funzioni...
Usando l'oggetto top invece funziona su tutti i browser, e questa è una cosa positiva, visto che è il modo corretto e crossbrowser per riferirsi ad un iframe. Usando parent, che è tecnicamente corretto ed è equivalente a top nel tuo caso, funziona e anche questo va bene.
Solo una precisazione: nel codice HTML che hai provato hai inserito gli stessi spazi che ci sono nel codice che hai postato qui? Voglio dire...hai spazi tra un attributo, il segno "=" e il valore di quell'attributo? Perché il codice non è corretto se è scritto così.
Quando hai provato a cambiare l'immagine, IE non ti ha dato nemmeno un messaggio di errore sulla barra di stato? Perché il fatto che Firefox si blocchi su "trasferimento dati da localhost" è come se non riuscisse a trovare o a caricare l'immagine da quella posizione. Hai verificato poi che Firefox abbia abilitato JavaScript completamente? Perché di default non ha abilitate alcune caratteristiche (Strumenti -> Opzioni -> Contenuti -> Abilita JavaScript -> Avanzate).