我目前正在为客户端构建一个 CMS,其中编辑页面看起来与渲染页面完全一样。
因此,我不想要基于 iframe 的 WYSIWYG,我正在寻找一种可以contenteditable
消除 Firefox 和 Webkit 之间差异的包装器。
例如Enter,Firefox 中的按键会产生一个<br/>
标签,而 Webkit 中的相同事件会导致它被包含在一个<div>
标签中。
如果您对编辑器没有建议,那么您能帮我解决这个问题吗?我首先修复它的方法是检查onkeyup
事件,然后使用execCommand
“撤消”,然后使用insertHtml <br/>
。
这很好用,但问题是如果用户在一个列表中,并且他们按 Enter 键,他们希望创建下一个列表元素,但最终会换行。当输入键被触发时,如何检测插入符号的位置,以便我可以跳过<br/>
插入行为?
理想情况下,我什至不希望<br/>
将文本块封装在<p>
标签中以用于 SEO 目的,但我也无法解决这个问题。
任何帮助将不胜感激 !