Kevin Wiedener: Wyswyg-Editor - Formatierung an Cursorposition bekommen

Hallo,

ich habe mir mal mehrere Wyswyg-Editoren angeschaut und bei manchen wird die Formatierung an der Stelle, an der sich der Cursor gerade befindet, angezeigt.

Allerdings komme ich nicht darauf, wie das gemacht ist.
Wie kann ich die Formatierung an der Stelle des Cursors auslesen?

Gibts dafür ne Funktion? Kann mir jemand helfen?
Die Lösung sollte auch für Netscape 7.1-Browser funktionieren (der unterstützt Wyswyg-Editoren ab dieser Version, bzw. den designmode-Modus).

Als Beispiel, was ich meine:

http://www.devedit.com/online_html_editor_demo1.php

Vielen Dank für Eure Hilfe

Gruß

Kevin

  1. Hallo Kevin,

    http://www.mozilla.org/editor/midas-spec.html beschreibt, wie man solche Anwendungen mit dem Mozilla machen kann.
    Für den IE musst Du wohl in den Untiefen des MSDN suchen.

    Grüße

    Daniel

    1. Sorry, aber ich versteh nur Bahnhof. Könnte mir jemand helfen?

      Gibt es für den Iframe-Tag so n Attribut wie onActive, d.h. sobald der Cursor sich bewegt oder an einer Stelle platziert wird wird ein Script aufgerufen?

      Gruß

      Kevin

      1. Hallo Kevin,

        Gibt es für den Iframe-Tag so n Attribut wie onActive, d.h. sobald der Cursor sich bewegt oder an einer Stelle platziert wird wird ein Script aufgerufen?

        Es gibt jedenfalls beim Mozilla eine Möglichkeit herauszufinden, wo sich der Cursor befindet.
        Mit window.getSelection() bekommst Du ein Objekt, das beschreibt, was gerade markiert ist. Wenn nichts markiert ist, ist die Start- und Endposition die Position des Cursors.
        An den DOM-Knoten in dem sich der Cursor befindet kommt man daher mit:
        window.getSelection().anchorNode;
        an die Position innerhalb dieses Knotens mit:
        window.getSelection().anchorOffset

        Genauer beschrieben ist die Schnittstelle hier:
        http://lxr.mozilla.org/seamonkey/source/content/base/public/nsISelection.idl

        Im IE geht es aller Wahrscheinlichkeit nach anders, aber frag mich nicht wie ;-)

        Grüße

        Daniel