我正在编写一些执行简单键盘事件捕获的测试应用程序。
我对这种基本方法没有任何问题。
但现在我需要更好的应用程序体验,我想连接至少两个或更多USB或PS / 2键盘,区分键盘是关键事件的来源,因此能够使用带有JavaScript(和HTML5)的本地Web浏览器,就好像它是一个游戏控制台,同时为多个玩家提供多个控制器。
我知道即使在Windows或Linux下,正常的行为是让几个键盘触发相同的事件。但是,我也知道,完全有可能知道特定键盘硬件设备触发了该事件。
是否可能或是JavaScript的限制?未来可能会支持支持相同基本类型的多个输入设备的区别,是否有一些替代方案,至少使用HTML5,或者它几乎失去了希望,在Web浏览器的上下文中谈论,JavaScript和HTML5?
答案 0 :(得分:3)
不,在当前的浏览器环境中,您无法支持特定类型的多个不同输入设备。我也不知道任何即将推出的规格可以实现这样的功能。通常,假设浏览器一次只有一个用户。我认为不会支持这样的事情。
尽管如此,目前正在制定gamepad支持的规范。非开发版浏览器不支持它,但Firefox和Chrome都在开发它。如果您对此技术感兴趣,已经有一个名为gamepad.js的有趣库。
目前,为了支持多个玩家,您可能需要执行大多数游戏所做的操作来支持多个基于键盘的玩家,将每个玩家映射到不同的按键群。