Отменить работу с событиями TinyMCE

#jquery #tinymce

#jquery #tinymce

Вопрос:

Я пытаюсь использовать плагин jquery от Бена Алмана debounce, который ограничит время вызова моей функции. https://github.com/cowboy/jquery-throttle-debounce

Однако saveEditor get вызывается каждый раз (и много раз за одно нажатие клавиши. Основная проблема заключается в том, что saveEditor вызывается несколько раз. Я хочу ограничить его вызов только один раз при каждой задержке. Вот почему я использую плагин. Если у кого-нибудь есть лучшая реализация, пожалуйста, поделитесь.

Вот мой код во время инициализации TinyMCE:

 'config' => 'setup : $.debounce(1000, true, function(ed) {
      ed.onEvent.add(function(ed, e) {
      if( ((e.ctrlKey==true || e.metaKey==true)))
      {
        saveEditor(this.editorId);
        e.returnValue = false;
        e.preventDefault();
       }
      });
      ed.onClick.add(function(ed) {
            lastClickedEditor = this.editorId;
        });
   })
  

Комментарии:

1. у вас есть несколько экземпляров редактора на вашей странице?

2. Да, есть несколько активных экземпляров.

Ответ №1:

Почему-то это выглядит так, как будто операция сохранения вызывается для каждого экземпляра редактора на вашей странице. Я не знаю, что делает ваш вызов функции saveEditor(this.editorId); (?). Но возможно сохранить только один редактор с помощью editor.save(); (ссылка на API).