Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 合并等元素DOM_Javascript_Jquery_Dom_Rich Text Editor - Fatal编程技术网

Javascript 合并等元素DOM

Javascript 合并等元素DOM,javascript,jquery,dom,rich-text-editor,Javascript,Jquery,Dom,Rich Text Editor,您好,我是一名JavaScript开发人员,我正在尝试创建一个在DOM上工作的文本编辑器。 考虑到复杂性,我能够实现一个很好的算法来包装和打开元素,但现在我发现自己在某些情况下拥有这样一个dom: <p> a <strong>b</strong> <strong>c</strong> <strong>d</strong> </p> <p> a <st

您好,我是一名JavaScript开发人员,我正在尝试创建一个在DOM上工作的文本编辑器。 考虑到复杂性,我能够实现一个很好的算法来包装和打开元素,但现在我发现自己在某些情况下拥有这样一个dom:

<p>
   a
   <strong>b</strong>
   <strong>c</strong>
   <strong>d</strong>
</p>
<p>
  a
  <strong>
    bcd
  </strong> 
</p>

A.
b
c
d


你好,世界

我会得到这样一个结构:

<p>
   a
   <strong>b</strong>
   <strong>c</strong>
   <strong>d</strong>
</p>
<p>
  a
  <strong>
    bcd
  </strong> 
</p>

A.

卡介苗

你好,世界
所以问题是:我怎样才能得到一个dom“规范化”,一个结合相邻标签的dom?我需要一种通用的技术,在使用编辑器进行更改后可以应用于我的dom。
谢谢你,我的英语很抱歉。

但是
b
c
d
之间有空格?是的,元素之间可能有空格。总之,我们必须在没有字符串解析算法的情况下对dom执行此操作。你试过什么了吗?一个简单的递归算法应该能够做到这一点。顺便问一下,应该合并哪些标记?我猜您不想加入两个后续的
标记?我需要组合所有这些元素:span、strong、em、u