Как работает отмена tinyMCE? - PullRequest
6 голосов
/ 11 марта 2011

Один из моих пользователей сильно разочарован функцией отмены в tinyMCE. Вместо того, чтобы отменить последнее незначительное изменение, оно отменяет множество изменений. Это момент времени, когда снимок делается каждые несколько секунд? Это настраивается?

Дополнительная информация : пользователь копирует и вставляет информацию из Word в редактор. Тогда очисти от всего, что Слово оставляет позади. Это включает в себя удаление лишних пустых строк между маркерами, удаление лишнего мусора, который оставляет функция «Вставить из Word», и т. Д. Что происходит, она делает упс и удаляет слишком много. Таким образом, она нажимает кнопку «Отменить», и это отменит намного больше, чем последний упс. Заставить ее сделать все снова. Отмена даже полностью удалила весь текст, который она вставила изначально (хотя это было не последнее редактирование).

1 Ответ

6 голосов
/ 11 марта 2011

Отмена работает особым образом.Существуют этапы отмены (снимки содержимого редактора), созданные tinymce при возникновении особых событий (возврат, удаление, вставка, ...).Интервал между моментальными снимками отсутствует.

Вы даже можете перехватывать события и добавлять свои собственные шаги отмены.Вот пример (я использую в одном из моих собственных плагинов):

// save undo step when space is pressed
ed.onKeyUp.add(function(ed, evt)
  if (evt.keyCode == 32) {
    ed.undoManager.add();
  }
});

Для получения дополнительной информации посмотрите в разделе undomanager api tinymce.

...