2012-04-17 5 views
15

Ich habe eine Grafikseite, die SVG-Grafiken zeigt. Ich benutze Raphael Graphics Framework. Die Seite wird in Firefox korrekt angezeigt. Auch wenn die F12-Entwicklertools in IE9 aktiviert sind, funktioniert es einwandfrei. Die Karte zeigt Teildaten (es ist ein Knotenverknüpfungsdiagramm und es zeigt nur einen Kindknoten von 12 Knoten) in IE9, wenn der F12-Entwicklermodus deaktiviert ist und die Anwendung gestartet wird, wobei der Browser-Cache gelöscht wurde (Simulation eines allgemeinen Benutzers).Konsole ist undefinierter Fehler in IE9

Update: Ich habe den Debugger eingeschaltet und zeigt mir den Fehler "Konsole ist undefiniert". Also denke ich, es ist kein Grafik-Rendering-Problem, und ich benutze auch nicht die Konsole explizit, vielleicht verwendet die Mindmap js es intern, aber wie man dieses Problem wieder loswerden?

Update: Ich habe das Problem gefunden und die console.log Einträge aus den js-Dateien auskommentiert.

Danke.

Antwort

39

Wahrscheinlich verwendet Ihr Code oder der Code, den Sie anrufen, console.log oder etwas ähnliches.

Sie könnten diesen Code im globalen Bereich hinzufügen, um einen Dummy-Wrapper für IE (oder einen anderen Browser, der dies nicht unterstützt) zu erstellen. Legen Sie einfach den folgenden Code irgendwo, bevor Sie andere Bibliotheken rufen:

if(!(window.console && console.log)) { 
    console = { 
    log: function(){}, 
    debug: function(){}, 
    info: function(){}, 
    warn: function(){}, 
    error: function(){} 
    }; 
} 
2

Haben Sie einen Aufruf console.log() oder console.error() in Ihrem Code?

+0

angeblich ist die Konsole Fehler angezeigt werden, herauszufinden, wo es aufgerufen wird. –

8

Das Problem ist, dass Ihr js Code irgendwann eine Konsole Methode aufruft, zum Beispiel ‚console.log‘, aber Ihr Browser nicht über Konsole (oder hat es geschlossen);

Um dies zu beheben, fügen Sie diese (einmal), bevor alle Ihre Skripte einschließlich:

//Ensures there will be no 'console is undefined' errors 
window.console = window.console || (function(){ 
    var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){}; 
    return c; 
})(); 

Dies erzeugt eine ‚pseudo‘ Konsole nur dann, wenn sie noch nicht existiert, so dass ‚Konsole nicht definiert ist‘ Der Fehler wird verschwinden.

Hoffe, das hilft. Cheers