jQueryで簡単にできるはずだと思うことを達成しようとしています。
ウェブサイトに長いテキストがあります。ユーザーがテキストを選択 (強調表示) するたびに、次の情報を取得する必要があります。
- 選択が始まる段落
- 選択が始まる段落内の文字
- 選択の長さ
- 選択範囲が終了する段落 (ハイライトが 1 段落を超える場合)
- 選択が終了する段落の文字
よろしくお願いします;)
jQueryで簡単にできるはずだと思うことを達成しようとしています。
ウェブサイトに長いテキストがあります。ユーザーがテキストを選択 (強調表示) するたびに、次の情報を取得する必要があります。
よろしくお願いします;)
テキストの選択を処理するものには、JavaScript を使用する必要があります。jQuery には、選択範囲の開始位置または終了位置を検出する組み込み関数がありません。Rangy http://code.google.com/p/rangy/は、そのような目的に使用できるものです。
以前に Stack Overflow でこれらすべてに回答したと思います。順番に:
getAncestor()
from hereとgetSelectionBoundaryContainerElement()
from hereの組み合わせが仕事をしますこれを行うには、API について少し調べる必要がありますが、これは悪いことではありません。
遊んで
window.getSelection
document.getSelection
document.selection.createRange()
このサイトの例を参照してください:http://www.codetoad.com/javascript_get_selected_text.asp