2011-12-27 47 views
0

我有一個ePub Book XHTML頁面,其中有許多p(段落)標籤。使用JavaScript查找選定的文本開始和結束索引

現在我在JS讓所選文本索引對於身體標記由下面的功能:

var fullString = document.getElementsByTagName("body")[0].textContent; 

if (window.getSelection) 
{    

    var range = window.getSelection(); 

    var startPosition = fullString.search(range); 

    var getPosition = range.toString(); 

    var endPosition = parseInt(getPosition.length) + parseInt(startPosition); 

    alert("Start position if : " + startPosition + " and End position : " + endPosition); 

    start_position = startPosition; 

    end_position = endPosition; 

} 

它返回我正確的索引,而選擇僅在一個P標籤。

但由於選擇涵蓋多個p標籤,我將開始位置設爲「-1」。

你能幫我解決這個問題嗎?

回答

0

請嘗試下面的行,你會得到它的工作。

var range = window.getSelection()。getRangeAt(0);

希望這會解決您的問題。

+0

AmGates,我在上面的代碼中實現了這個我以前用過這個。問題在於你的建議是根據段落標籤給我的範圍不是根據我身上的所有文本標籤。 – user1113191 2012-01-02 06:45:10

+0

嘿,我已經試過這段代碼建議。我不明白你想說什麼。 – AmGates 2012-01-02 06:57:51

相關問題