2014-07-10 11 views
5

Html:Javascript rimuovere i plugin CKEditor sul carico

<textarea name="Editor" class="ckeditor" id="aboutme">@Model.Content</textarea> 

Javascript:

<script> 
    config.removePlugins = 'elementspath,save,font'; 
</script> 

Quando caricamento della pagina, voglio disattivare tutti ckeditor plugins.I cercato sopra il codice tuttavia lo ha fatto non funziona per me

Come posso rimuovere i plugin da javascript sul caricamento della pagina?

Qualsiasi aiuto apprezza. Grazie.

risposta

12

È possibile definire una lista di plugin per caricare (CKEDITOR.config#plugins):

config.plugins = 'wysiwygarea,toolbar,basicstyles,...'; 

Ma si può anche limitare l'esistente (base) lista di plugin (CKEDITOR.config#removePlugins):

config.removePlugins = 'link,...'; 

Entrambe le opzioni possono essere definito globalmente (config.js) o per un'istanza dell'editor particolare come

CKEDITOR.replace('editor1', { 
    removePlugins: 'link' 
}); 

Si prega di fare riferimento alla guida ufficiale Setting Configuration per saperne di più.

: Da CKEditor 4.1, la presenza di un plug-in determina se determinati contenuti di tipo associati a tale plug-in sono consentiti o non consentiti. Maggiori informazioni su Advanced Content Filter.

+1

Da dove viene il nome "editor1"? Quando esegui quel codice, è solo quando inizializzi l'editor? Come puoi aggiungere/rimuovere plug-in quando l'editor è già caricato? Come interagisce con la funzione 'ckeditor()' stessa? La documentazione non spiega molto bene le cose ... – SeanKendle

+2

"editor1" è l'ID predefinito per la textarea che si desidera sostituire con ckeditor. puoi cambiarlo in qualunque sia l'ID nel tuo codice HTML – Acyra

+0

@Acyra Voglio rimuoverlo per tutte le istanze di ckeditor che verranno create (ad es. DIV con contenteditable = "true" che diventeranno ckeditors in futuro quando vengono cliccati sopra). Come lo faccio? Non esiste una variabile globale chiamata "config" per impostare "removePlugs". Nel momento in cui CKEDITOR viene definito, sembra essere troppo tardi, il plugin è già caricato! – Michael

2

Per rispondere alla mia domanda nel commento alla risposta di oleq:

Ho un'istanza CKEditor che sto usando (con jQuery) in questo modo:

window.onload = function() { 
     $ckTarget = $(".pageContentTextBox"); 
     if ($(".pageContentTextBox").length > 0) { 
      $ckEditor = $ckTarget.ckeditor({ 
       htmlEncodeOutput: true, 
       removePlugins: "link" 
      }); 
     } 
}; 

ero in grado di rimuovere con successo il plugin "link" in questo modo. Ho intenzione di impostare un controllo utente ASP.net con proprietà pubbliche "extraPlugins" e "removePlugins" e inserire i valori usando i tag gialli lato client ("code nuggets") per poterlo utilizzare su più pagine con differenti plugin abilitati/disabilitati.

Spero che questo aiuti qualcuno!