我想知道網頁瀏覽器在給定的div
中包裹了哪些文本。JavaScript:找到我們的文本換行發生在哪裏
這個動機是一個所見即所得的編輯器,它使用contenteditable
。用戶在那裏寫文本,根據可編輯字段的寬度,字體和其他因素,它會在特定位置打包。我想知道這些發生在哪裏。
我只能想到非常黑客的解決方案(例如,在每個角色周圍插入一個span
,在這些跨度上循環,獲取他們的offsetTop
屬性,並在其更改時進行記錄)。有沒有更好的/標準的做法?
我想知道網頁瀏覽器在給定的div
中包裹了哪些文本。JavaScript:找到我們的文本換行發生在哪裏
這個動機是一個所見即所得的編輯器,它使用contenteditable
。用戶在那裏寫文本,根據可編輯字段的寬度,字體和其他因素,它會在特定位置打包。我想知道這些發生在哪裏。
我只能想到非常黑客的解決方案(例如,在每個角色周圍插入一個span
,在這些跨度上循環,獲取他們的offsetTop
屬性,並在其更改時進行記錄)。有沒有更好的/標準的做法?
我做了一個谷歌,發現堆棧溢出,不知道這是你以後,但給它一個閱讀。這是相當古老的。
document.getElementById("body").onchange = function() {myFunction()};
function myFunction() {
//Your eval script to log where changes took place
}
或者
document.getElementById('body').addEventListener('change', myFunction());
什麼是想與信息呢?你是在斷點處添加元素,還是僅僅需要知道多少斷點等? – kthornbloom
我們希望在將內容呈現爲其他格式時使用此信息獲得相同的結果。換句話說,用戶在網絡上編輯內容並在特定位置看到線條斷裂。然後用戶將數據提交給服務器。服務器應該呈現看起來儘可能相似的PDF。 – Sjlver
在SO和外部有很多這個問題的答案:https://github.com/xdamman/js-line-wrap-detector http://stackoverflow.com/questions/12887372/detect-browser-wrapped-lines- via-javascript –