我一直在尝试使用HTML5 canvas开发文本编辑器(作为个人项目),但我遇到了实现复制/粘贴/退格功能的问题。我已经研究了大约六个项目的源代码,就像这个项目一样,但我还没有找到解决方案。
任何人都可以推荐一种快速有效的方法来实现这种功能吗?
答案 0 :(得分:5)
我们使用这样的方式:焦点在隐藏的textarea中,所以ctrl-v正常工作。在文本更改时,您可以更改画布图像。您可以轻松同步选择。您可以绑定textarea“input”事件以捕获所有更改:
输入:当用户在文本框中输入文本时,会发送此事件。仅当显示的文本发生更改时才会调用此事件,因此当用户按下不可显示的键时不会调用此事件。
我认为,这是最好的也是唯一正确的方法(如果没有它,你就无法在javascript中使用剪贴板)