Основанный на холсте редактор - Как? - PullRequest
1 голос
/ 09 августа 2011

Я пытался разработать текстовый редактор (как личный проект) с использованием HTML5 canvas, но у меня возникли проблемы с реализацией функций копирования / вставки / возврата.Я изучил исходный код примерно для полдюжины проектов, похожих на этот, но я до сих пор не нашел решения.

Может кто-нибудь порекомендовать быстрый и эффективный способ реализации такого рода функций

1 Ответ

5 голосов
/ 09 августа 2011

Мы используем такой способ: фокус находится в скрытой области текста, поэтому ctrl-v работает правильно.При изменении текста вы меняете изображение холста.Вы можете легко синхронизировать выбор.Вы можете связать событие ввода «textarea», чтобы перехватить все изменения:

Ввод : это событие отправляется, когда пользователь вводит текст в текстовое поле.Это событие вызывается только тогда, когда отображаемый текст изменится, поэтому оно не вызывается, когда пользователь нажимает неотображаемые клавиши.

Я думаю, это лучший и единственный правильный путь (без него невозможно работать с буфером обмена в javascript)

...