解决方法
这似乎是一个坏主意,因为文本输入有一个非常多的文本输入,textarea免费提供(插入符号,选择,剪切,粘贴,拖放,箭头键处理等),但这里有两件事你需要做 :
>给你的< canvas> tabindex属性,以便它可以获得焦点,从而引发关键事件;
>将一个按键(不是keydown)处理程序添加到< canvas>捕获文本输入的元素.
码:
<canvas id="textarea" tabindex="1" width="300" height="200"></canvas> <script type="text/javascript"> var el = document.getElementById("textarea"); el.onkeypress = function(evt) { var charCode = evt.which; var charStr = String.fromCharCode(charCode); alert(charStr); }; </script>