Si que habría funcionado, pero JavaScript mola mas ;-D
Opera no cumple con los estándares a rajatabla, por eso soporta document.frames (que es un chapuzeo de MS y no cumple con los estandares del W3C, cosa lógica, un frame no puede estar dentro de un documento, a no ser que sea un iframe, como es éste caso, y, aún y así, el contenido del iframe es otro documento, así que de nuevo, depende de la ventana, no del documento que _visualmente_ lo contiene).
Pero el error es de la página porque incluyen la cabecera , es decir, es como si aseguraran que la página cumple con los estándares del W3C (si utilizaran un estandar de JavaScript no compatible con el actual de W3C, deberñían especificarlo en la etiqueta lang= en