Ladefehler bei Script
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
betreffende zeile
bibliothek
code
datei
dom
einbindung
erstellung
fehler
http
information
kleinigkeit
not
obigem fehler
operation
safari
sicherheit
testzweck
type
verzeichnis
zeile
-
Moin,
also, aus irgendeinem Grund funktioniert auf einmal (ja, irgendwie ging das vor kurzem noch und geändert hab ich eigentlich nichts) meine HP nicht mehr. Hab mal die Fehlerkonsole bemüht, und die Schmiss mir aus:
Fehler: uncaught exception: [Exception... \"Operation is not supported\" code: \"9\" nsresult: \"0x80530009 (NS_ERROR_DOM_NOT_SUPPORTED_ERR)\" location: \"http://localhost/dev3/src/js/scriptaculous.js?load=effects Line: 30\"]
In der Zeile 30 von dem Script steht:
document.write(\'<script type=\"text/javascript\" src=\"\'+libraryName+\'\"><\\/script>\');
Das Script ist im Head des XHTML-Dokumentes definiert.
Das seltsame ist, dass ich wie gesagt nichts geändert habe, zumindest mit Sicherheit nicht am Scriptacolous-Script oder der Einbindung. Und vorher hat halt alles funktioniert. Abgesehen von obigem Fehler kommt dann halt folgender:
Fehler: Effect is not defined
Quelldatei: http://localhost/dev3/src/js/style_standard.js
Zeile: 39
der vermutlich durch den ersten bedingt wird, da die betreffende Zeile die dritte Codezeile ist, die nach dem Laden des Scriptes ausgeführt wird und dort steht ein Scriptacolous-Effekt (und die Bibliothek wird ja nicht geladen, wie oben gesehen).
Also: Weiß irgendjemand, wieso auf einmal \"document.write\" not_supported ist? Und wie ich den eventuell manuell umgehen kann? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Problem gelöst. Ich habe etwas geändert, ohne etwas zu ändern, sozusagen ;) Habe zu Testzwecken für eine andere HTML-Datei im selben Verzeichnis ne .htaccess hinzugefügt, die dazu gesorgt hat, dass HTML-Dateien per Content-Type \"application/xhtml+xml\" ausgeliefert werden. Bei echtem XHTML ist aber document.write nicht erlaubt, und da der Browser beim richtigen content-type auch darauf besteht, dass es sich um richtiges XHTML handelt, hat er das unterbunden. Bin das jetzt improvisiert mit
var script = document.createElement(\'script\'); script.setAttribute(\'type\', \'text/javascript\'); script.setAttribute(\'src\', libraryName); document.getElementsByTagName(\'head\')[0].appendChild(script);
Statt dem alten document.write umgangen.
1.) Habe wenig Erfahrung mit der Erstellung von Nodes im DOM, wenn das geschickter geht, bitte sagen (selbst wenns nur ne Kleinigkeit ist).
2.) Im Kommentar von der Script.aculo.us-Bibliothek steht, dass das hinzufügen von Elementen per DOM von Safari nicht unterstüzt wird, hat da jemand nähere Informationen? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage