簡體   English   中英

表示HTML中的文檔DOM:同級文本節點

[英]Representing Document DOM in HTML: Sibling Text Nodes

我從@Bergi中閱讀了一條很老的評論,其中討論了nextSibling值:

x.nextSibling可能不是跨度,而是img和span元素之間的換行文本節點

@Bergi引用的示例是一些腳本,用於在相當簡單的HTML中選擇第一個元素,然后找到nextSibling

<img src="something">
<span>

瀏覽器是否在元素節點之間的DOM中插入“換行文本節點”? 我真正想理解的是在有關使用ProseMirror將文檔模型序列化為HTML的較早討論中的此評論:

HTML幾乎總是可以用來完全表示文檔DOM。 我們遇到一個例外:同級文本節點。 在使用ProseMirror之前,我們發現擁有同級文本節點非常重要,因此我們將HTML序列化為JSON以存儲在數據庫中。 出於兼容性原因,我們現在仍然這樣做,但是鑒於我們不再需要同級文本節點,因此在下一版本的文件格式中可能會消失。

該線程中的其余討論非常多,並且與該問題無關,因此我沒有將其鏈接。 我認為作者之所以說在同級文本節點的情況下HTML無法鏡像DOM的原因,是因為將換行符節點自動插入到DOM中(並且不以HTML表示)。 這個准確嗎?

我認為您提到的“隱藏字符”概念不正確。 事實是nextSibling 實際上返回dom上的下一個同級,但這並不意味着它將成為dom上的下一個元素 如果您想嘗試,請刪除所有換行符,然后重試,或者直接使用nextElementSibling

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM