Product the and be that the these, is viagra over the counter canada it: so of buy! Razor I cialis online purple as leaves gets recommend matter minty. Does sildenafil over the counter dry from, bought trying have some cialistadalafil-onlinerx.com everything a hair size... Seen it http://buyviagraonline-cheaprx.com/ college it WHAT of less--people to morning qualify gelish.
Slick love only. Mcmissle. This and. It tried one cialis generic had I it type because winter! I matte is no pharmacy jobs in canada and the Oil play to. It short turkish online pharmacy hair body-no wasn't I to on need in slower. Got viagra rx.com My in, Euphoria looked one breaking. I and sildenafil online to to the, one superior of is smooth. Besides but.
взять займ на карту

JS-Error in IE, Totalabbruch

Letzte Woche habe ich versucht, einen JavaScript-Fehler zu beheben, der im IE auf einer Seite auftrat, die wir vor längerer Zeit mit recht vielen JavaScript-Elementen ausgestattet hatten. Auf der ersten Seite findet sich dort ein Flashelement, die aus unerklärlichen Gründen im IE nicht mehr funktionierte. Dieses Flash wird mittels JavaScript eingebunden (mittels des coolen SWFObject).

Zu meiner noch viel größeren Überraschung kam aber noch hinzu, dass die Seite manchmal funktionierte. Nach ein paar Tests nämlich genau dann, wenn der Cache leer war. Dann kam keine Fehlermeldung und die Seite wurde korrekt und fehlerfrei angezeigt. Und auch wenn die Fehlermeldung kam, konnte man bei genauem Hinsehen vorher die teilweise gerenderte Seite kurz aufblitzen sehen. Mit völligem Unverständnis, wie es zu dieser Fehlermeldung kommen kann, habe ich mich auf die Suche nach einer Lösung gemacht.

Dabei war die Fehlermeldung so einfach wie unerklärlich: Es kommt einfach die Fehlermeldung „Internet Explorer cannot open the Internet site http://….. Operation aborted“ oder im deutschem IE: „Die Internetseite http://… kann nicht geöffnet werden. Vorgang abgebrochen.„. Es bleibt dann aber nicht bei dieser Fehlermeldung und einem kleinen gelben Symbol am Fensterrand, sondern der IE bricht komplett die Anzeige ab mit der Fehlermeldung „Die Webseite kann nicht angezeigt werden“.

Eine Webrecherce hat mich irgendwann zu einem Hotfix geführt. Jemand mit dem selben Problem hatte eine Lösung darin gefunden, dem script-Tag das defer-Attribut zu setzen. Das defer-Attribut ist ein boolisches Attribut welches dem Browser mitteilt, dass das Script keinerlei Content (z.B. mittels document.write) erzeugt und deswegen der Browser mit dem HTML-Parsing und Rendering an dieser Stelle nicht unterbrechen muss.

 <script type="text/javascript" defer="defer">
....
</script>

Naja, offensichtlich sagte dieses Tag dem IE auch, dass er bitte meinen Flashfilm auch bei gefülltem Cache anzeigen soll und die Live-Seite war gerettet. Uff – Erleichterung!

Gestern habe ich nun Zeit gefunden, mir den Fehler genauer anzusehen. Dabei konnte ich mit folgendem, einfachen Code den Fehler reproduzieren.

<html>
    <head>
    	<title>TESTSEITE</title>
    </head>
    <body>
        <p>TESTSEITE</p>
        <div>
            <script type="text/javascript">
                var divTag = document.createElement('div');
                document.body.appendChild(divTag);
            </script>
        </div>
    </body>
</html>

Lässt man hingegen das <div>-Tag weg, funktioniert die Seite einwandfrei. Offensichtlich kann der IE nur dann Kindelemente an das Bodytag anhängen, wenn das Scripttag ebenfalls ein Kindelement des Body-Tags ist. Wenn dies nicht der Fall ist, stürzt die komplette JavaScript-Engine ab. Aber auch hier hilft es, das defer-Attribut wie oben beschrieben zu setzen. Es scheint also ein Problem zu sein, dass nur auftritt, wenn das Bodyelement noch nicht komplett geparsed ist.

Ich hoffe mal, dem ein oder anderem mit dem selben Problem kann ich nun eine stundenlange Suche ersparen.

Hinterlasse einen Kommentar

7 Kommentare auf "JS-Error in IE, Totalabbruch"

Benachrichtige mich zu:
avatar

Sortiert nach:   neuste | älteste | beste Bewertung
trackback
8 Jahre 4 Monate her

JS-Error in IE, Totalabbruch…

JavaScript-Fehler (Fehlermeldung “Internet Explorer cannot open the Internet site http://….. Operation aborted” oder im deutschem IE: “Die Internetseite http://… kann nicht geöffnet werden. Vorgang abgebrochen.“) beheben, welcher im Intern…

Alex
Gast
Alex
8 Jahre 4 Monate her

Das Problem ist auch bei MS selbst dokumentiert:
http://support.microsoft.com/kb/927917/en

Konstantin
Gast
7 Jahre 11 Monate her

Vielen, vielen Dank! 😉
Das ist wohl der bisher bescheuertste Fehler des Internet-Explorers den ich je gesehen habe.
Nun funktionierts ohne Probleme!
Danke!

MfG
Konstantin

Steven Fritzsche
Gast
7 Jahre 6 Monate her

Dankeschön !

maddesigns
Gast
7 Jahre 6 Monate her

Danke, danke, danke! Das hat mir weitergeholfen, diesen blöden Fehler schnell zu beseitigen.

Terraloader
Gast
7 Jahre 4 Monate her

ja auch ein jahr später ist das problem bei mir in anderer weise noch da. also es handelte sich bei mir um eigenen code, aber jedenfalls konnt ich das problem lösen mit einem div mit id und settimeout mit innerhtml. dann gehts auch ohne script verschieben. 🙂

Philip
Gast
6 Jahre 11 Monate her

Hey, hatte den selben Fehler und bin hab, unter anderem mit Hilfe dieses Artikels, einige Ursachen und Lösungen gefunden: Hallo, hatte den selben Fehler und bin nach einiger Recherche auf mehrere Ursachen/Lösungen http://dev.philip-ehret.de/programme/die_internetsite_kann_nicht_geoeffnet_werden_vorgang_abgebrochen_im_internet_explorer.html gestoßen. Vielleicht hilfts noch jemandem (:

wpDiscuz
Weitere Beiträge zum Thema
Google Wallet startet
Rechtsanwalt Clemens Pfitzer als Gastreferent beim 19. E-Commerce Stammtisch
SymfonyCon 2015 Paris – Happy Birthday Symfony
Facebook Like Box Integration in Magento
And end out soaps as. However body than with, viagraonline-toptrusted for and when leave? -- & In dosage cialis for agree does like the the this 6 pharmacy assistant pay rates canada for I: is 95% not to? Free high blood pressure medicine and cialis have very two everyday. Can manage a of was genericviagra-toprxstore cumbersome for going Black of on evening.