molily: Suche sowas wie navigator.framesEnabled

Beitrag lesen

Noch einmal hallo,

if (top && top.framename)

Wozu dient die erste Bedingung »top«?

Meinen Untersuchungen nach ist »if (top) ...« (äquivalent zu »Boolean(top)«) immer wahr (wohingegen top==true unwahr ist), unabhängig davon, ob das Dokument im Frameset oder nicht aufgerufen wurde. Denn falls ein Dokument außerhalb jedes Framesets aufgerufen wird, kann top nur wahr sein, weil window auch wahr sein muss, weil in dem Fall top===window(===self) gilt. Oder übersehe ich etwas? Es sei denn, ein Browser beherrscht die bekannten JavaScript-Objekte, aber unterstützt generell keine Frames, dann wäre top unnötig. Einen solchen Browser gibt es meines Wissens aber nicht, und Boolean(top.framename) implizit meines Wissens, dass top existieren muss, damit der Ausdruck wahr wird.

Mathias