Aktuelle DOM-Position
Bjoern
- javascript
Moin!
hat hier jemand eine Idee, wie ich im Allgemeinen innerhalb eines eingebetteten JS ein Handle auf das jeweilige Elternelement des aktuellen Scripts erreiche ?
Gruß,
Björn
hat hier jemand eine Idee, wie ich im Allgemeinen innerhalb eines eingebetteten JS ein Handle auf das jeweilige Elternelement des aktuellen Scripts erreiche ?
Wer oder was soll das sein
Struppi.
hat hier jemand eine Idee, wie ich im Allgemeinen innerhalb eines eingebetteten JS ein Handle auf das jeweilige Elternelement des aktuellen Scripts erreiche ?
Wer oder was soll das sein
Struppi.
Naja, ich möchte per DOM-Manipulation (appendChild o.ä.) einen Baum oberhalb des entsprechenden Script-Tags einhängen.
Struppi.
Du musst meinen Namen nicht zitieren.
Naja, ich möchte per DOM-Manipulation (appendChild o.ä.) einen Baum oberhalb des entsprechenden Script-Tags einhängen.
Was ist oberhalb, was ist ein Baum?
Kannst du auch konkret werden?
Struppi.
Was ist oberhalb, was ist ein Baum?
Kannst du auch konkret werden?
Ok, dann mal etwas konkreter:
Wir haben ein Apache-Modul entwickelt, dass mittels mehrerer Parser (HTML, JS, CSS, RE) eine beliebige Site in Echtzeit vom Originalserver bezieht, u. durchreicht. Das ganze ohne Proxy in den Browser-Settings.
D.h. jeder jegliche Adressierung (sei es HTMl, JS, CSS, Flash, ...) muss auf den "man-in-the-middle-Kontext" umgeschrieben werden, damit Folgeaufrufe auf dem vermittelnden Server bleiben und auch alle Elemente diesen Server passieren (die Seiten müssen nachträglich [u. unabhängig vom eventuellen Session-Kontext] 1:1 ohne Kontakt zum Originalserver nachgebildet werden können, um aufgrund der gesammelten Daten automatisiert Screenshots erstellen zu können).
Soweit funktioniert das ganze auch.
Allerdings müssen natürlich auch DHTML-Inhalte entsprechend angepasst werden, bevor sie beispielsweise per document.write() oder *.innerHTML in's Dokument geschrieben werden. Das geschieht über Wrapper.
Damit nicht die ganze serverseitige Logik clientseitig nachgebaut werden muss, gehen DHTML-Inhalte rekursiv per XHR zurück in die Serverlogik ein.
Das Problem: Bei sehr großen DHTML-Lastingen Seiten steigen durch die sequentiellen XHR-Requests die Performance-Defizite in einen inakzeptablen Bereich, sodass ich an dieser Stelle überlege, DHTML-Inhalte JS-seitig in einen DOM-Fragent zu überführen, per DOM-Manipulation zu bearbeiten u. an der entsprechenden Stelle einzuhängen um (wie angedeutet) nicht browserseitig auf das serverseitige Parserkonstrukt auf Textebene nachbauen u. vor allem pflegen zu müssen.
Die Frage ist jetzt: Wie komme ich z.B. ausgehend von einer document.write() -Funktion an dasjenige Element, and das ich das DOM-Fragment anfügen muss, um ein Äquivalent zu document.write() herzustellen.
Allerdings ist die Idee wohl eh hinfällig, da alle mir bekannten möglichkeiten einen HTML-Schnipsel in ein DOM-Fragment umzuwandeln, dazu führen, dass entsprechende Requests umgehend eingeleitet werden - bevor man eine Chance hat relevante Attribute zu manipulieren.
Viele Grüße,
Björn