Kommt im mittels console.log(...) generierten stream im Original der Doppelbackslash ( also: \\ ) vor, dann wird er dort auf einen einzigen backslash reduziert. Man muß also den kopierten Quelltext in einem Editor von Hand nachbearbeiten.
Das ist dann von Nachteil, wenn man expandierte streams als Webseiten verwendet.
Klar muß man dazu im Editor " durch \" ersetzen, was aber mit dem \\-Problem nichts zu tun hat. Diese \\ existieren erst gar nicht, werden also bereits von console.log(...) auf ein \ reduziert, was aber eben nicht sein sollte.
Man muß also mühsam suchen, wo denn wohl vorher mal ein \\ gewesen sein könnte.
Firebug-bug bei Doppelbackslash mittels console.log(...) ?
-
juxfan -
26. November 2007 um 18:21 -
Erledigt
-
-
Das ist kein Bug - das ist der Standard.
Schon Uralt: Der Backslash \ stuft Zeichen mit funktionaler Bedeutung zu normalen Zeichen herab.
Ein String " " wird durch die " eingeleitet und abgeschlossen. Damit Du das " selbst als Zeichen ausgeben kannst, musst Du das \ voranstellen " \" ". Darum benötigt man für einen einfachen Backslash \ die Angabe \\.
Die Notwendigkeit von \ innerhalb von Webseiten erschließt sich mir gerade nicht, da die Verzeichnisebenen auf dem Server durch den / gesteuert werden.
-
Originalauszug aus einem per console.log(document.getElementById('construct').innerHTML) für eine Expandierschablone (html-file) generierten stream:
document.getElementById('construct').innerHTML="...'Sehen Sie\\'s?\'...img src=\\'***.gif\\'..."
Sowas kann ja laufend vorkommen.
Beispiel-Quellcode:http://juxfan.redio.de/a15formularexpandierschablone.html -
-
Um Gottes Willen, ne, der Quellcode ist unzumutbar - ist nur expandiert, mit javascript generiert.
Interessant sind nur die \\-Stellen, die real vorkommen können und leider nachträglich von Hand zu ändern sind.
Wird einem nicht erspart bleiben. Gut - man könnte den automatisch generierten "...." Quellcode per javascript evtl. automatisiert durchforsten. Muß mal gucken, wie man die richtigen Stellen findet. Sollte gehen. Wäre nur schön, wenns unnötig wäre.Schönen Gruß - juxfan
-
Viell. gibts für das \\-Problem doch eine Lösung, wenn man diese korrekt abgearbeitete Seuqenz
...+"onmouseover=\"this.innerHTML = '<img src=\\'icon_lol.gif\\'>'\""+...
viell. in die ...+'....'+... -Form bringen könnte, was ich nicht schaffe.
Ich bilde mir eine, alle Möglichkeiten durchprobiert zu haben, es läuft nicht im browser.
Oder gehts bitte doch, diese \\ zu vermeiden, die console.log(...) leider nur als einzelnes \ liefert?Schönen Gruß
-
Hier ist der Code nochmal isoliert:
http://juxfan.redio.de/backslash.html
Geht das auch in nur einfachen Hochzeichen zu schreiben?
Pardon, das Problem ist erledigt, wie man sieht. Tut mir leid, hatte Tomaten auf den Augen.