Chrome在android上返回每次229为keyCode



我有这段代码:

...
@HostListener('keydown', ['$event'])
onKeyDown(evt: KeyboardEvent) {
console.log('KeyCode : ' + evt.keyCode);
console.log('Which : ' + evt.which);
....
}

适用于所有ios浏览器——>一切正常

对于android,正在firefox上工作,但在chrome上,我有229evt.keyCode&&evt.which,无论按哪个键都没有关系。

对这个问题有什么想法吗?

不推荐使用evt.keyCode,而是使用evt。

返回该键的String

描述。然而,无论如何,它不会在Chrome Android上工作,这是铬项目的一个众所周知的错误。

它应该可以在Firefox Android上运行。

看起来keyCode已被弃用,并且由于遗留原因在某些浏览器中仍然支持:https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode

建议使用evt.code

你应该尽量避免使用这个;它已经被弃用一段时间了。相反,你应该使用KeyboardEvent。代码,如果它被实现的话。不幸的是,有些浏览器仍然不支持,所以你必须小心确保你使用的是所有目标浏览器都支持的浏览器。

根据该特性支持的浏览器表判断,您应该可以使用key

最新更新