プラグイン内からエディタを破棄する際の問題は、実際にエディタがなくなってエラーや不安定性が発生する特定のコードが破壊的なプラグインコードの後にエディタを使用しようとすることです。CKEditorプラグインによるエディタの閉じ方
私は非同期の両方使用してエディタを閉じ、プラグインの次のコードが出ている:私が見る問題はそれが可能性が高いだろう危険なsetTimoutコールを使用していることである
var cancelAddCmd =
{
modes : { wysiwyg:1, source:1 },
async: true,
exec : function(editor)
{
if(confirm('Are you sure you want to cancel editing and discard all content?')) setTimeout(function() { editor.destroy(); }, 100);
}
};
:真とのsetTimeoutをコンピュータの実行速度に応じて、結果が混在します。エディタを破棄しても100msが経過していない可能性があります。
プラグイン内からエディタを破棄する適切な方法はありますか? asyncの場合でもtrue:true; setTimeoutエラーは作成されません。
可能であれば、エディターに関連する既存の/それ以上のコードを後で実行しないようにすることが考えられますか?
私は上のようなイベントを、使用して試してみました( 'afterCommandExec'、機能(){editor.destroy();})といくつかの他のイベントが、それは助けていませんがあまり...ありませんエディタがボタンを処理するスタック呼び出しから飛び出したときのようなイベントがあるようです。
さらに、CKEditorインスタンスをより適切に破棄して実行を停止する方法はありませんか?