CKEditor插件-elementPath的正确行为
目前,我有以下HTML内容CKEditor插件-elementPath的正确行为,ckeditor,Ckeditor,目前,我有以下HTML内容 <span criteria="{"animal":["DOG"]}">abc</span> def <span criteria="{"animal":["CAT"]}">ghi</span> 测试用例1 当我选择我的文本时,如下所示 我得到以下日志 0 --> ab
<span criteria="{"animal":["DOG"]}">abc</span> def <span criteria="{"animal":["CAT"]}">ghi</span>
测试用例1
当我选择我的文本时,如下所示
我得到以下日志
0 --> abc
1 --> <span criteria="{"animal":["DOG"]}">abc</span> def <span criteria="{"animal":["CAT"]}">ghi</span>
criteriaElement is something
criteriaElement attribute length is 1
attribute is {"operator":["DOG"]}
0 --> <span criteria="{"animal":["DOG"]}">abc</span> def <span criteria="{"animal":["CAT"]}">ghi</span>
我心里有些疑惑
elementPath
中会有2个元素。一个是def
,另一个是ghi
elementPath.contains…
不返回任何内容Elementspath与选择不以这种方式相关。它表示插入符号下的元素堆栈。设想这样一种情况,
[]
表示选择,|
表示插入符号:
<ul>
<li>Quux</li>
<li>F[oo <span class="bar">Bar</span> <span class="baz">Ba|]z</span></li>
<li>Nerf</li>
</ul>
- 库克斯
- F[oo Bar Ba |]z
- 削弱
您的选择视觉上包含文本“oo Bar Ba”,插入符号位于a和z之间。此时,elementspath将显示“ul>li>span”。另一个跨度元素“bar”是跨度元素“baz”的兄弟元素,因此不显示,只显示上升点
您可以这样认为,插入符号只能存在于html中,而elementspath显示该文本节点的上升点
你想干什么?要显示当前选择中的数据?为什么?你想把它展示在哪里?您希望它以何种方式显示,以及为什么显示?我猜有一种不同于使用elementspath的方式来满足您的需求(我认为这可能是并且)
太长,不能作为注释:如果工具栏按钮操作的目标元素具有criteria属性-如果有一个跨度具有criteria属性,而有一个跨度不具有criteria属性,该怎么办?他们的顺序重要吗?如果有两个跨度具有“条件”属性,该怎么办?如果它们是这样嵌套的呢:
F[oo-Bar-Ba |]z-qux-xyzy
-目标很难确定。如果某个元素具有该属性,我建议您向该元素添加一个小标记,而不是单击该标记或右键单击该元素,您可以编辑/查看条件。您甚至可以在编辑器中通过自定义editor.css
这样的规则来直观地指示属性范围,如span[criteria]{color:red;}
Elementspath与选择无关。它表示插入符号下的元素堆栈。设想这样一种情况,[]
表示选择,|
表示插入符号:
<ul>
<li>Quux</li>
<li>F[oo <span class="bar">Bar</span> <span class="baz">Ba|]z</span></li>
<li>Nerf</li>
</ul>
- 库克斯
- F[oo Bar Ba |]z
- 削弱
您的选择视觉上包含文本“oo Bar Ba”,插入符号位于a和z之间。此时,elementspath将显示“ul>li>span”。另一个跨度元素“bar”是跨度元素“baz”的兄弟元素,因此不显示,只显示上升点
您可以这样认为,插入符号只能存在于html中,而elementspath显示该文本节点的上升点
你想干什么?要显示当前选择中的数据?为什么?你想把它展示在哪里?您希望它以何种方式显示,以及为什么显示?我猜有一种不同于使用elementspath的方式来满足您的需求(我认为这可能是并且)
太长,不能作为注释:如果工具栏按钮操作的目标元素具有criteria属性-如果有一个跨度具有criteria属性,而有一个跨度不具有criteria属性,该怎么办?他们的顺序重要吗?如果有两个跨度具有“条件”属性,该怎么办?如果它们是这样嵌套的呢:
F[oo-Bar-Ba |]z-qux-xyzy
-目标很难确定。如果某个元素具有该属性,我建议您向该元素添加一个小标记,而不是单击该标记或右键单击该元素,您可以编辑/查看条件。您甚至可以在编辑器中通过自定义editor.css
这样的规则来直观地指示属性范围,如span[criteria]{color:red;}
Elementspath与选择无关。它表示插入符号下的元素堆栈。设想这样一种情况,[]
表示选择,|
表示插入符号:
<ul>
<li>Quux</li>
<li>F[oo <span class="bar">Bar</span> <span class="baz">Ba|]z</span></li>
<li>Nerf</li>
</ul>
- 库克斯
- F[oo Bar Ba |]z
- 削弱
您的选择视觉上包含文本“oo Bar Ba”,插入符号位于a和z之间。此时,elementspath将显示“ul>li>span”。另一个跨度元素“bar”是跨度元素“baz”的兄弟元素,因此不显示,只显示上升点
您可以这样认为,插入符号只能存在于html中,而elementspath显示该文本节点的上升点
你想干什么?要显示当前选择中的数据?为什么?你想把它展示在哪里?您希望它以何种方式显示,以及为什么显示?我猜有一种不同于使用elementspath的方式来满足您的需求(我认为这可能是并且)
太长,不能作为注释:如果工具栏按钮操作的目标元素具有criteria属性-如果有一个跨度具有criteria属性,而有一个跨度不具有criteria属性,该怎么办?他们的顺序重要吗?如果有两个跨度具有“条件”属性,该怎么办?如果它们是这样嵌套的呢:
F[oo-Bar-Ba |]z-qux-xyzy
-目标很难确定。如果某个元素具有该属性,我建议您向该元素添加一个小标记,而不是单击该标记或右键单击该元素,您可以编辑/查看条件。您甚至可以在编辑器中通过自定义editor.css
这样的规则来直观地指示属性范围,如span[criteria]{color:red;}
Elementspath不是