javascript 触摸回车的事件代码是什么?

jjjwad0x  于 2022-12-28  发布在  Java
关注(0)|答案(2)|浏览(119)

在触摸屏上点击回车的event.code是什么?在键盘上工作的代码似乎在触摸屏上不起作用。

el.addEventListener( 'keydown', ev => {
  ev.stopImmediatePropagation();
  switch( event.code ) {
    case "Enter": ...
  }
}

您可以测试here

  • 用户:stacko
  • 通过:SO 4u;22

点击链接编辑,按回车键保存,它确实能在PC上工作,但在Android上不行。

aiqt4smr

aiqt4smr1#

安卓系统,Chrome返回""作为Event.code
也许你想试试Event.key

addEventListener("keydown", (event) => {

   console.log(event.key)     // "Enter" 
   console.log(event.keyCode) // 13
   console.log(event.code)    // ""
   console.log(event.which)   // 13

})
<textarea></textarea>
uxhixvfz

uxhixvfz2#

最后我终于解决了这个问题。在移动的设备上调试并不是缓存的胜利之旅,也不是永远不知道什么代码实际上正在执行。这是我的代码摘录,供复制粘贴者参考。

"use strict";
/**  * a static (not live) NodeList representing a list of the document's elements that match the specified group of selectors.  
  * @param {string} selector  
  * @param {Element} [document] base  
  * @returns {(NodeList|Element|null)} 
  */ 
 const $ = (selector, base = document) => { 
   let elements = base.querySelectorAll(selector); 
   return (elements.length == 1) ? elements[0] : elements; 
 } 
  /** 
    * handle Enter and Esc events 
    */ 
   const keyEH = cellUrl.addEventListener("keydown", ev => { 
     switch (ev.key) { 
       default: break; 
       case "Enter": 
         console.log(`save data ${cellUrl.textContent}`); 
         break; 
       case "Escape": 
         endEdit(cellUrl, cellUrlValue); 
         break; 
     } 
   }, { passive: true, capture: false });

请参阅(https://github.com/theking2/link-qr)中的存储库

相关问题