删除后附加到CKEditor并附加到DOM
发布时间:2020-12-14 23:23:10 所属栏目:资源 来源:网络整理
导读:我正在将CKEditor集成到更大的项目中,该项目使用“tabs”一次显示多个屏幕.切换标签时,我会分离包含CKEditor的标签div.当我再次附加它时,CKEditor坏了.它是可见的,但它会丢失文本,因此无法在其中写入文本. 示例代码: script src="http://ckeditor.com/apps/
我正在将CKEditor集成到更大的项目中,该项目使用“tabs”一次显示多个屏幕.切换标签时,我会分离包含CKEditor的标签div.当我再次附加它时,CKEditor坏了.它是可见的,但它会丢失文本,因此无法在其中写入文本.
示例代码: <script src="http://ckeditor.com/apps/ckeditor/4.2/ckeditor.js?mriyyd"></script> <div id="section1"> <script> CKEDITOR.appendTo('section1',null,'<p>This is some <strong>sample text</strong>.</p>'); </script> </div> <script> var s = document.getElementById('section1'); var sP = s.parentNode; </script> <button onClick="sP.removeChild(s);">Detach</button> <button onClick="sP.appendChild(s);">Attach</button> 你可以在这里试试:http://jsfiddle.net/kxtxz/6/ 谁有经验并最终解决了类似的问题? 解决方法
CKEditor实例背后的逻辑依赖于DOM结构,如果你修改它,它确实会被破坏.
但是有一个简单的解决方案.在分离之前首先获取数据: var savedData = CKEDITOR.instances.instanceName.getData(); 那基本上叫: CKEDITOR.instances.instanceName.destroy(); 分离时,再次重新创建编辑器 CKEDITOR.appendTo( 'section1',savedData ); 当附加. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |