Javascript 如果编辑器进行了更改,则ckeditor不会自动保存
下面是我的js代码,当我添加新值或输入空格等时,它可以正常工作。基本上,下面的代码在按下最后一个键保存textarea值5秒钟后调用函数。我面临的问题是,如果我使用编辑器来更改其内部的内容(如加粗文本、下划线等),而不按编辑器上的任何键,则函数不会进行任何调用。请让我知道如何修改以下代码,使其在5秒后的最后一次更改时触发Javascript 如果编辑器进行了更改,则ckeditor不会自动保存,javascript,jquery,ckeditor,Javascript,Jquery,Ckeditor,下面是我的js代码,当我添加新值或输入空格等时,它可以正常工作。基本上,下面的代码在按下最后一个键保存textarea值5秒钟后调用函数。我面临的问题是,如果我使用编辑器来更改其内部的内容(如加粗文本、下划线等),而不按编辑器上的任何键,则函数不会进行任何调用。请让我知道如何修改以下代码,使其在5秒后的最后一次更改时触发 CKEDITOR.replace( 'editor1', { on: { instanceReady: function() { },
CKEDITOR.replace( 'editor1', {
on: {
instanceReady: function() {
},
key: function() {
onautosave(); // Function which makes call after 5 seconds to save values
}
}
});
function onautosave(){
if(autosave_timer)
clearTimeout(autosave_timer);
autosave_timer = setTimeout(save, 5000);
}
尝试使用“更改时”事件,这可能对您更有效:
CKEDITOR.replace('editor1', {
on: {
instanceReady: function() { },
change: function() {
onautosave(); // Function which makes call after 5 seconds to save values
}
}
});
function onautosave() {
if (autosave_timer) {
clearTimeout(autosave_timer);
}
autosave_timer = setTimeout(save, 5000);
}
这似乎有效-您可以通过在('change',function(){console.log(“Content changed”)})上运行
CKEDITOR.instances['editor1']来测试它上控制台中的代码>。使用编辑器按钮以粗体显示文本时会生成该事件。