Ich hatte vor einiger Zeit eine Anwendung entwickelt, in der dynamisch durch JavaScript mehrere IFRAMEs erstellt und dann nach Bedarf mit URLs gefüllt wurden. Das bedeutet das src Attribut wurde erst zu einem späteren Zeitpunkt mit einer URL gefüllt, welche dann in diesem IFRAME angezeigt wird. Solange keine URL angegeben wird, zeigt der Browser einfach eine Leerseite an. In der Adresszeile des Internet Explorers immer an "about:blank" zu erkennen.
So weit funktionierte alles super und es gab keine Problemen - bis zu dem Zeitpunkt, wo die Anwendung auch unter SLL, also über https://, laufen sollte. Plötzlich blendete der Internet Explorer immer eine Warnmeldung ein, in der vor "Unsicheren Objekten" in der Seite gewarnt wurde. Eigentlich eine Meldung die immer dann eingeblendet wird, wenn man in einer Seite, die über https:// aufgerufen wurde, Objekte wie z.B. Bilder eingebunden hat, die über http:// geladen werden.
Nun war ich mir aber hundertprozentig sicher, das ich kein einziges Objekt - keine Grafik, keinen Link - in der Seite hatte, der über http:// aufgerufen wurde. Nach einiger Zeit und vielen Tests bin ich dann endlich dahinter gekommen, das der Internet Explorer die Leerseite, die durch "about:blank" aufgerufen wird, als http:// Seite einbindet. Also nicht über https://!
Die einzige Möglichkeit die es gibt dies zu umgehen ist, keine HTML Elemente in der Seite zu erstellen, bei denen das href bzw. das src Attribut leer ist, denn dann setzt der Internet Explorer automatisch "about:blank" ein. Am besten einfach eine leere HTML Seite erstellen und dort mit https:// angeben, bzw. bei Bildern ein leeres GIF oder so.
Wenn jemand einen anderen Weg kennt, ich freue mich über jeden Hinweis. Aber bis dahin sollte es auch so gehen.
Ach ja, im Firefox gibt es dieses Problem nicht!