如何通过Javascript检测用户是否有键盘?

如何通过Javascript检测用户是否有键盘?,javascript,jquery,Javascript,Jquery,我正在构建一个站点,在该站点中,我使用keyup事件将某些键全局绑定到快捷方式。例如,如果有人按A键,就会打开一个菜单 我不想在移动设备(如手机和平板电脑)上绑定这些触发器。然而,有很多人在平板电脑上使用键盘。如何通过Javascript检测键盘输入是否存在?我知道我可以根据touchstart是否存在来检测触摸设备,但对于使用平板电脑并插入键盘的人来说,这是行不通的。如果有键盘,我只想绑定keyup事件。做这件事最好的方法是什么 注:我知道这是一个很好的选择,但如果可能的话,我想这样做 提前谢

我正在构建一个站点,在该站点中,我使用
keyup
事件将某些键全局绑定到快捷方式。例如,如果有人按A键,就会打开一个菜单

我不想在移动设备(如手机和平板电脑)上绑定这些触发器。然而,有很多人在平板电脑上使用键盘。如何通过Javascript检测键盘输入是否存在?我知道我可以根据touchstart是否存在来检测触摸设备,但对于使用平板电脑并插入键盘的人来说,这是行不通的。如果有键盘,我只想绑定
keyup
事件。做这件事最好的方法是什么

注:我知道这是一个很好的选择,但如果可能的话,我想这样做


提前谢谢

用户点击任意键后,总是可以将一个“捕获所有”事件处理程序附加到延迟附加事件处理程序的文档对象。

在所有情况下,为什么不绑定到
keyup
。。。如果用户没有键盘,它将不会做任何事情。我只是不想绑定不必要的事件。这很重要还是没什么大不了的?如果它只是一个键控处理器,那绝对没什么大不了的。您编写的不包含处理程序的代码可能会更大。很高兴知道这一点,谢谢!:)我认为,手机浏览器通常模拟键盘事件以与现有脚本兼容。至少我曾经使用过的安卓设备上的人都这么做了(尽管不是很完美)。因此,键盘事件的存在并不是一个指标。