我無法獲取使用Javascript的文本節點的大小(以像素爲單位)。例如:在Javascript中測量文本節點的邊界框
<p> first text block <b>second text block</b> </p>
我需要獨立地獲取兩個文本塊的邊界框。我可以通過測量< b>元素來獲得第二個塊的大小,但第一個塊沒有。據我所知,似乎Javascript中的textnode沒有高度或寬度。
將第一個文本塊包裝到< span>中,並且測量這不是一個選項,因爲我發現跨度不一定會繼承其上的所有樣式,並且當我包裝文本時它會突然變化尺寸。這就像Javascript的海森堡不確定性原理一樣;我測量某件事物的嘗試改變了它。
我正在構建一個將HTML分成頁面(實際上是EPUB HTML)的應用程序,並且我需要知道頁面上每個文本塊的位置,高度和寬度,以便我可以知道是否要放置它在此頁面或下一頁上。
有什麼建議嗎?
有確實出現了一個答案。我們採取了完全不同的方法來解決這個問題。我們正在使用多列布局來分解EPUB中的頁面。不需要文字指標。 – ccleve
我錯了。 Tim Down已經回答了。 – ccleve