Я понял!
Сначала в моем веб-редакторе были созданы текстовые редакторы с классом ckeditor, и я позволил ckeditor.js сделать их richTextEditors. Затем я попробовал отличные решения от других ответов, но не смог заставить их работать.
Затем я изменил имя класса (на CKeditor), поэтому мне нужно инициализировать редакторы в моем коде. Я попробовал это, и это работает:
<script type="text/javascript" src="/ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="/ckeditor/adapters/jquery.js"></script>
$('.CKeditor').ckeditor(function(){
this.on('blur', function({if(this.checkDirty())alert('text changed!');});
});
Поэтому, когда редактор теряет фокус, он проверяет, не загрязнен ли он, а если он есть, то запускает измененную функцию (предупреждение в этом примере).
Позже я попробовал снова с плагином onchanges, таким образом:
$('.CKeditor').ckeditor();
for (var i in CKEDITOR.instances) {
CKEDITOR.instances[i].on('change', function() {alert('text changed!');});
}
Теперь он работает и с плагином (спасибо @Alfonso). Но я думаю, что плагин слишком сильно запускает событие изменений, я предпочитаю первое решение, где изменения оцениваются только при размытии.
Надеюсь, это поможет! и спасибо всем за помощь.