Search code examples
ckeditor

How to hide toolbar in CKEditor inline


I have an application that needs the inline CKEditor but without toolbar. For the inline CKEditor part I have:

CKEDITOR.disableAutoInline = true;
var editor = CKEDITOR.inline('editable', {on: {
    instanceReady: function() {periodic();}
}});

var periodic = (function() {
    var data, oldData;
    return function() {
        if ((data = editor.getData()) !== oldData) {
            oldData = data;
            $.post("update.php", {txt:data});
        }
        setTimeout(periodic, 1000);
    };
})();

Then for the toolbar hiding part I found this: CKEditor 4 Inline: How to hide toolbar on demand?

//Whenever CKEditor loses focus, We will hide the corresponding toolbar DIV.
function hideToolBarDiv(event) {
   // Select the correct toolbar DIV and hide it.
   //'event.editor.name' returns the name of the DIV receiving focus.
   $('#'+event.editor.name+'TBdiv').hide();
}

Problem is that I have no clue how to combine these two together :) I appreciate for any hint. Thank you.


Solution

  • I found another link that seems to solve my problem: Can I use CKEditor without a toolbar? The script seems to be working alright though I am still not sure if it is a correct way to do it:

    CKEDITOR.disableAutoInline = true;
    var editor = CKEDITOR.inline('editable', {
        removePlugins: 'toolbar',
        allowedContent: 'p h1 h2 strong em; a[!href]; img[!src,width,height]'
        on: {instanceReady: function() {periodic();}}
    });
    
    var periodic = (function() {
        var data, oldData;
        return function() {
            if ((data = editor.getData()) !== oldData) {
                oldData = data;
                $.post("update.php", {txt:data});
            }
            setTimeout(periodic, 1000);
        };
    })();