H5 canvas接收键盘事件

Posted 力为

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了H5 canvas接收键盘事件相关的知识,希望对你有一定的参考价值。

html

Canvas接收事件的前提:Canvas得到焦点(Focus)

Canvas 获取焦点的前提:给Canvas设置了tableIndex。


window.onload = function() 

   let myCanvas = document.getElementById('canvas');
   myCanvas.tableIndex = 1;

   document.addEventListener('mousedown', function(event) 
      if(myCanvas  == event.target)
          myCanvas.focus();
   );
   
   myCanvas.addEventListener('keydown', function(event) 
         alert('This is keydown event.');
      
   );

WebAssembly

SDL2默认会捕获windows上的键盘事件,这不是我们想要的行为。可以这样设置一下,只响应canvas上的键盘消息:

SDL_SetHint(SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT, "#canvas");

以上是关于H5 canvas接收键盘事件的主要内容,如果未能解决你的问题,请参考以下文章

H5 canvas接收键盘事件

H5移动端页面加入canvas可滑动代码条件下android手机点击input重复弹出键盘

Uniapp(H5)判断软键盘是否唤起关闭事件

Uniapp(H5)判断软键盘是否唤起关闭事件

移动端H5软键盘的问题

解决:h5进入页面拉起键盘ios不生效问题