我正在构建一个使用javascript动态添加页面元素的Web应用程序,然后可以使用contentEditable="true"
和编辑CKEditor
.
目前,如果我向页面添加元素contentEditable="true"
,则该元素是可编辑的,但CKEditor
工具栏不会出现.
我试过打电话,CKEDITOR.inlineAll()
但这似乎没有做任何事情.
如何激活CKEditor
动态创建的元素的内联编辑?(不刷新页面).
编辑:我发现给元素一个ID(例如)someId并调用CKEDITOR.inline(someId)具有所需的效果.但我不想为我的所有元素添加唯一ID.有没有办法在所有contentEditable元素上激活CKEditor?
CKEDITOR.inline
接受本机DOM元素作为参数.无论您如何创建动态元素,如果您传递对该函数的引用,它都会将其转换为CKEditor实例.例如,假设您使用jQuery作为主框架:
// A dynamically created element. var el = $( 'I\'m editable!
' ); // Append the element to . $( 'body' ).append( el ); // CKEDITOR.inline accepts DOM element as parameter. CKEDITOR.inline( el.get( 0 ) );
看小提琴.