2011-08-10 19 views
0

我試圖完成一些我認爲應該在jQuery中簡單的事情。jQuery - 獲取選擇的段落,長度等

我在我的網站有一個長文本。 每當用戶選擇(加亮)一文中,我需要得到以下信息:

  • 在選擇始於
  • 的選擇開始於
  • 長度該款的燒烤段落選擇的
  • 其中該選擇結束於(萬一突出超出一個段落)
  • 炭在該段在選擇結束
該段

謝謝你;)

+1

你試過什麼..? –

回答

1

我覺得我之前已經回答了所有這些堆棧溢出。反過來:

  • heregetSelectionBoundaryContainerElement()heregetAncestor()組合將做的工作
  • 這取決於你的意思是「該段字符的選擇開始處」。如果段落內可能有其他元素而不僅僅是一個文本節點,這會變得稍微棘手。你可以改編this
  • 同樣,這取決於您所說的「選擇的長度」。您可以get the selected text as a string並使用其長度屬性。
  • 參見選擇答案開始
  • 參見選擇答案開始

你需要做的API的小書房裏要做到這一點,這不是一件壞事。

1

你需要使用JavaScript處理文本選擇的任何事情。 jQuery沒有內置函數來檢測選擇開始或結束的位置。 Rangy http://code.google.com/p/rangy/可能是您可以用於此目的的東西。