我在我的项目中使用CKEditor
(4.1版本)。 我希望在用户重新加载页面后,保留编辑器中的光标位置。 CKEditor
提供了相应的功能。
var bookmark = editor.selection.createBookmarks();
存储光标位置。但是,如果我使用标签来分割文本,这可能会导致在存储过程中发生错误。
var data = editor.getData()
返回以下内容
<p>one</p>
<p>two<span style="display:none"> </span></p>
<p>three</p>
以下内容可以用以下方式代替
<p>one</p>
<p>two<span data-cke-bookmakrs="1" style="display:none"> </span></p>
<p>three</p>
在
config.js
文件中,我做了以下的操作config.extraAllowedContent = "span[data-cke-bookmark]"
我在这里错过了什么?
提前感谢您的答案和建议...
data-cke-*
属性移动到data-*
,这样在获取数据时它们就不会被删除,然后获取数据。接着,加载此数据,用data-cke-*
属性替换data-*
,并使用moveToBookmark()
方法。基本上,尽可能多地使用CKEditor的东西,因为这样更安全。 - Reinmar