如果CkEditor的实例在inline mode中工作,有没有办法测试(通过javascript,之后CkEditor的实例都已准备就绪)?
答案 0 :(得分:3)
使用CKEDITOR.instances.yourInstance.editable().isInline()
。另请参阅official API docs。
注意#1 :永远不要检查getAttribute('contenteditable') == 'true'
,因为如果您致电yourInstance.setReadOnly()
,则断言将失败。可编辑元素在只读模式下具有contenteditable="false"
,但它仍然可以是内联的。
注意#2 :针对getAttribute( 'contenteditable' )
的另一个原因:
// Since CKEditor 4.2 is possible to make inline instance out of <textarea>.
var editor = CKEDITOR.inline( 'article-body' );
editor.element.getName()
>> "textarea" // In such case, editor.element refers to <textarea>.
editor.element.getAttribute( 'contenteditable' )
>> null // Textarea (editor.element) is never contenteditable.
答案 1 :(得分:-2)
我已在http://ckeditor.com/demo#inline
调试了DEMO并找到了这种方式。
var ckeditor_instance_el = CKEDITOR.instances['inline-sampleTitle'].element.$;
if(ckeditor_instance_el.getAttribute('contenteditable') == 'true')
alert('IT\'S AN INLINE EDITOR!!');
试试吧。