Element feststellen bei Mausklick / selektiertem Text
Tom123
- javascript
0 molily
Hallo,
bevor mich an die Arbeit mache, möchte ich mir gerne eure
Meinungen zu meinen Problemen anhören.
a) mit documen/window.getSelection() bekommt man Zugriff auf
selektierten Text. Ist es möglich eine Referenz auf das nächsthöhere
HTML-Element zu bekommen, in dem eben dieser Text eingebettet ist?
Ich würde den DOM rekursiv durchsuche und testen, ob der selektierte
Text im jeweiligen Knoten enthalten ist.
b) Ist es möglich, ohne das Hinzufügen von zahlreichen Maus-Handlern
für jedes Element, eine Referenz auf das HTML-Element zu bekommen,
an dessen Stelle der Benutzer geklickt hat?
Danke,
Tom
Hallo,
a) mit documen/window.getSelection() bekommt man Zugriff auf
selektierten Text. Ist es möglich eine Referenz auf das nächsthöhere
HTML-Element zu bekommen, in dem eben dieser Text eingebettet ist?
Das geht meines Wissens nur mit den TextRanges im IE und soweit ich weiß Opera:
http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/parentelement_1.asp
b) Ist es möglich, ohne das Hinzufügen von zahlreichen Maus-Handlern
für jedes Element, eine Referenz auf das HTML-Element zu bekommen,
an dessen Stelle der Benutzer geklickt hat?
Alle Maus-Ereignisse steigen im DOM-Knotenbaum auf, kommen also bei document bzw. document.body an und lösen dort die entsprechenden Handler aus.
Über Ereignisobjekt.target bzw. Ereignisobjekt.srcElement bekommst du das ursprünglich geklickte Element.
Wenn der Browser DOM 2 Events unterstützt, kannst du sie auch bereits in der Capture-Phase behandeln (document.addEventListener("click", funktion, true)).
Mathias