alert im FF
Paul
- javascript
Moin!
Wenn ich mir einen String (z.B.: "Element%20%27EPSG_HRS%27:%20%27i%27%20entspricht%20nicht%20dem%20Datentyp%20%27xs:long%27.") mit
alert(unescape(strError));
ausgeben lasse, wird das alert-Fenster manchmal nicht zuende gerendert (es erscheint nur der Rahmen mit transparentem Inhalt). Wenn ich dann mit der Maus drüber fahre ist es sofort da.
An dem String bzw. dem unescape sollte es nicht liegen, denn folgendes kommt immer sofort:
document.getElementById('errorField').value = unescape(strError);
Woran liegt das und kann man das alert-renderungs-Problem beheben?
Paul
Hallo,
Wenn ich mir einen String (z.B.: "Element%20%27EPSG_HRS%27:%20%27i%27%20entspricht%20nicht%20dem%20Datentyp%20%27xs:long%27.") mit
alert(unescape(strError));
ausgeben lasse, wird das alert-Fenster manchmal nicht zuende gerendert (es erscheint nur der Rahmen mit transparentem Inhalt). Wenn ich dann mit der Maus drüber fahre ist es sofort da.
unabhängig von deiner Frage: Warum erzeugst du den String intern erst URL-codiert? Das ist eigentlich nicht sinnvoll - es ist erst sinnvoll, ihn von der Klartextdarstellung in die URL-Codierung umzuwandeln, wenn man ihn im URL-Kontext verwenden will.
Woran liegt das und kann man das alert-renderungs-Problem beheben?
Ich habe das Verhalten, das du beschreibst, noch nicht beobachtet; so wie es sich liest, halte ich es aber für einen Bug von Firefox. Damit andere eine Chance haben, das Phänomen nachzustellen, wäre es aber nötig, die genaue Version von FF zu wissen (und das System, auf dem er läuft). Kann ja auch sein, dass das nur in einer bestimmten Desktop-Umgebung passiert.
So long,
Martin
unabhängig von deiner Frage: Warum erzeugst du den String intern erst URL-codiert? Das ist eigentlich nicht sinnvoll - es ist erst sinnvoll, ihn von der Klartextdarstellung in die URL-Codierung umzuwandeln, wenn man ihn im URL-Kontext verwenden will.
Der String kommt aus der URL
... die genaue Version von FF zu wissen (und das System, auf dem er läuft). Kann ja auch sein, dass das nur in einer bestimmten Desktop-Umgebung passiert.
FF 3.6.3
Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)
wird das alert-Fenster manchmal nicht zuende gerendert (es erscheint nur der Rahmen mit transparentem Inhalt). Wenn ich dann mit der Maus drüber fahre ist es sofort da.
Versuche bitte, das Problem auf eine möglichst kurze HTML-Datei einzuschmelzen, damit andere den Fehler ohne Aufwand und vor allem Rätselraten nachvollziehen können. Deiner Darstellung nach müsste beispielsweise
<html>
<body>
<script>
alert(unescape("a%20%27b"));
</script>
</body>
</html>
ausreichen, um den Fehler zu reproduzieren. Ist dem nicht so, kürze deine Seite entsprechend, bis quasi nur noch der Fehler drin ist.
Anschließend hänge dich damit bitte an https://bugzilla.mozilla.org/show_bug.cgi?id=566536 und vergiss nicht, deine Software anzugeben. "FF" sagt praktisch gar nichts, brauchbar wäre etwas wie "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3", du findest diese Angabe im Menü ganz rechts unter "Hilfe" im letzten Punkt, "Über Mozilla Firefox".
Ok, da bin ich jetzt:
Ist dem nicht so, kürze deine Seite entsprechend, bis quasi nur noch der Fehler drin ist.
das dauert aber ...
Ist dem nicht so, kürze deine Seite entsprechend, bis quasi nur noch der Fehler drin ist.
das dauert aber ...
Je mehr Vorarbeit du selbst erledigst, desto größer ist die Chance, dass der Fehler behoben wird. Anders ausgedrückt: Bei dir mag es dauern, ohne dich dauert es aber noch länger – möglicherweise ewig.
[latex]Mae govannen![/latex]
alert(unescape(strError));
Kleiner Nebenschauplatz: escape und unescape sind deprecated, stattdessen solltest du je nach Bedarf eines der encode.../decode...-Funktionspaare verwenden.
Cü,
Kai