wie kann ich aber die Funktion von einem anderen Frame aus nutzen?
Wenn ich Deine Beispieldatei in einem Frameset lade funktioniert der Aufruf immer nur von dem Frame von dem ich das Fenster aufgerufen habe.
Dann solltest du die Variable fenster im übergeordneten Rahmen anfüttern. Ich habe mit Frames nicht viel am Hut, deshalb rate ich jetzt einfach mal, dass du sämtliche Referenzen an fenster durch parent.fenster oder ersetzen musst.
Falls das nicht funktioniert: Mit der Firefox-Erweiterung Firebug kannst du die Javascript-Umgebung eingehend inspizieren und schauen, wo sich fenster versteckt.