ドキュメントによると、CKEditのインスタンスを破棄できないようです。
以下を検討してください。
<input name="txt1" type="text" id="txt1" /><br />
<a href="javascript:void(0);" onclick="create()">Create</a><br />
<a href="javascript:void(0);" onclick="destroy()">Destroy</a>
<script type= "text/javascript" >
<!--
function create() {
var hEd = CKEDITOR.instances['txt1'];
if (hEd) {
CKEDITOR.remove(hEd);
}
hEd = CKEDITOR.replace('txt1');
}
function destroy(){
var hEd = CKEDITOR.instances['txt1'];
if (hEd) {
CKEDITOR.remove(hEd);
}
}
-->
</script>
Destroy()が実行されると、CKEDITOR.remove(hEd);呼ばれています。 create()を複数回クリックすると、画面上にCKEditorの複数のインスタンスが生成されますが、それらのインスタンスはCKEDITOR.instancesに表示されなくなります。
何か不足していますか?
HEd.destroy( editor.destroy() )を使用する必要があります。
CKEDITOR.remove() は、APIで述べられている内部使用のためのものです。