Probleme mit Node für eigene Erweiterung

  • Ich möchte für eine Erweiterung alle markierten Links auf einer Seite auswerten, wo die Stehen habe ich auch schon gefunden. Dafür muss ich aber sämtliche childNodes auslesen. Das habe ich ja schon fast fertig, nur habe ich das Problem, nicht genau herauszufinden, wo die Markierung endet.
    Diese Funktion:


    soll wenn ich folgendes mache:

    Code
    var range = selection.getRangeAt(0);
     var ancestorContainer = range.commonAncestorContainer;
     var startContainer = range.startContainer;
     var endContainer = range.endContainer;
    ...
     var startPath = getPath(ancestorContainer, startContainer);
     var endPath = getPath(ancestorContainer, endContainer);


    mir sagen, in welchem Node die Markierung beginnt bzw. endet. Das geht ja auch ganz gut, es sei den auf einer Ebene befindet sich beispielsweise 2 mal ein HTMLFontElement und die Markierung endet im 2., dann sagt er mir jedesmal, dass es im 1. endet. Ist ja auch ganz logisch, nur diese Funktion wird auch verwendet um den Quellcode der Markierung anzuzeigen und dort funktioniert es. Was muss ich machen, damit der mir das richtige Ende anzeigt.