2010-08-10 16 views
8

Sto provando a richiamare la funzione close per la finestra di dialogo CKEditor dal mio plug-in personalizzato. Proprio come succede quando fai clic su smile nel plugin "smiley", ma non riesco a scoprire come posso fare lo stesso nel mio plugin. Grazie per la risposta!CKEditor close dialog

Ho la soluzione. Nel mio plugin avevo bisogno di chiamare la funzione close da "CKEDITOR.dialog.add" nella sezione "onLoad". Quindi, devo fare questo:

CKEDITOR.dialog.add('plugin_name', function(editor){ 
    onLoad: function(event){ 
     [...some code...] 
     event.sender.hide(); 
    } 
} 

risposta

20

CKEDITOR.dialog.getCurrent().hide()

+0

Grazie, questo ha funzionato! –

1

vi propongo lo fai lo stesso modo in cui viene fatto da CKEditor finestra del plugin internamente. Vedere la riga 535 in plugin.js

Facendo clic sul pulsante o attivando l'evento di annullamento si garantisce la corretta gestione da parte del plug-in. campione

Codice:

// If there's a Cancel button, click it, else just fire the cancel event and hide the dialog. 
     button = CKEDITOR.dialog.getCurrent().getButton('cancel'); 
     if (button) 
      CKEDITOR.tools.setTimeout(button.click, 0, button); 
     else { 
      if (CKEDITOR.dialog.getCurrent().fire('cancel', { hide : true }).hide !== false) 
      CKEDITOR.dialog.getCurrent().hide(); 
     }