我正在開發一個應用程序,使用戶能夠在文本文章上進行協作(通常通過突出顯示/記錄特定文本跨度)。如何將JavaScript中的文本亮點編碼爲API
我將有一個以某種形式提供文檔的API(它們現在是.doc格式,但我想用Markdown之類的東西來提供它們)。我可以放心地認爲文章的內容不會改變。
我目前卡在這些亮點的編碼格式。問題在於這些文章對它們有一些格式(例如,作者會從另一篇外部文章引用的blockquotes,以及典型的換行符和段落間距),因此客戶端將解釋格式與服務器不同。
例如,減價使用>
字符來表示一個塊引用的內容,而HTML使用<blockquote>
- 所以在這種情況下,我的Javascript代碼會 - 當住在<blockquote>
用戶亮點文本 - 需要做一些凌亂的計算獲得正確的字符偏移量。
最後,我想總是與字符偏移量在服務器上的工作如下:
// e.g.
// from the 55th character to the 58th character
// offset = [55, 3]
我簡要地考慮其他幾個方面:
- 發送文章儘管這會產生相同的問題,因爲我需要將CSS類添加到HTML標記中
- 將文章內容作爲字符串數組發送(在文章的每個換行符中分隔)並給一個類型的eac^h的項目(例如,「正常」或「塊引用」) - 儘管這似乎是一個簡單的方式來解決這個問題
有編碼從我失蹤客戶端,這些亮點的一些其他更清潔的方式?
編輯:爲了更清晰 - 這將是一個客戶端應用程序(需要一個現代瀏覽器)。