Aber wie komme ich auf das aktuelle Element? Also kein parentNode kein firstChild sondern das was ich selektiert habe?
commonAncestorContainer ist doch mehr als sprechend. Bei Markierungs-Vorgängen gibt es nicht DAS aktuelle Element, es können schließlich mehrere Knoten oder auch nur Teile eines Knoten markiert werden.
Ob wirklich nur ein Knoten markiert wurde kannst du herausfinden, indem du überprüfst ob range.startContainer der selbe Knoten wie range.endContainer ist.