DOM ノードを返すこのコードがあります。
<script>
function a(){
var userSelection;
if (window.getSelection) {
userSelection = window.getSelection();
}
else if (document.selection) { // should come last; Opera!
userSelection = document.selection.createRange();
}
var rangeObject = getRangeObject(userSelection);
var node = rangeObject.startContainer;
}
function getRangeObject(selectionObject) {
if (selectionObject.getRangeAt)
return selectionObject.getRangeAt(0);
else { // Safari!
var range = document.createRange();
range.setStart(selectionObject.anchorNode,selectionObject.anchorOffset);
range.setEnd(selectionObject.focusNode,selectionObject.focusOffset);
return range;
}
}
</script>
そのため、body タグの始まりと同様に、var ノードの絶対インデックスを取得する必要があります。親ノードでインデックスを取得できました。しかし、私はそれが絶対的である必要があります
アイデアは、このインデックスと選択したテキストの開始位置をデータベースに保存し、後でそれらを取得することです。
注釈ツールを構築しようとしているので、テキストの一部を強調表示してこのテキストにコメントを残し、後でページが表示されたときに、この注釈付きテキストを表示する必要があります。
body で mouseup イベントが発生すると、関数 a が呼び出されます。