Andree Filchos: Rangeobjekt - DOM (Mozilla) vs. innerHTML (IE)

Hallo,

ich schreibe gerade einen WYSIWYG-Editor, der auf IE 5.5+ und Mozilla 1.3+ laufen soll. Im geckobasierten Mozilla kann man wunderbar mit dem Rangeobjekt (getRangeAt(), startContainer etc. ) Teilbäume erhalten, die man manipulieren kann. Es scheint mir aber so, dass man im IE nur mit innerHTML, also mit Text arbeiten kann.

Da ich verständlicherweise nicht zwei komplette Editoren mit vollständig unterschiedlichen Technologien schreiben will, möchte ich entweder innerHTML auf Mozilla simulieren oder, was mir lieber wäre, das DOM-Modell auf dem IE. Ich finde es handlicher, mit Bäumen zu arbeiten, als Texte mit RegExps zu manipulieren.

Wer weiss, ob es eine Möglichkeit gibt, das Rangeobjekt im IE, welches man mit selection.createRange erzeugt hat, mit dem DOM anzusprechen?

Gruß A.F.

  1. Hi,

    Da ich verständlicherweise nicht zwei komplette Editoren mit vollständig unterschiedlichen Technologien schreiben will, möchte ich entweder innerHTML auf Mozilla simulieren oder, was mir lieber

    Nix Simulation: innerHTML funktioniert wunderbar nativ auf Mozilla, Konqueror, Opera, ...

    ... selfHTML "weiß" das nur nicht. ;-)

    Gruß, Cybaer

    1. Nix Simulation: innerHTML funktioniert wunderbar nativ auf Mozilla, Konqueror, Opera, ...

      Hallo Cybaer,

      meines Wissens steht innerHTML bei Mozilla nur im normalen DOM-Zusammenhang zur Verfügung, nicht als Property eines Range-Objektes.
      Ich habe inzwischen ein Script geschrieben, das den Baum durchläuft und einen HTML-String zusammensetzt. Damit scheint die Sache zu gehen. Ich hatte allerdings die Möglichkeit einer eleganteren Lösung erhofft

      ... selfHTML "weiß" das nur nicht. ;-)

      Für diese neueren Techniken hilft SelfHTML selten weiter. Dafür ist ja auch u.a. das Forum da. Trotzdem bleibt SelfHTML nach wie vor state of the art für alle Basistechnologien.

      Gruß Olaf