使用nsIEnvironment来确定鼠标是左手还是右手



我想检测用户是否使用鼠标左键为主键(e.button == 0),右键为次键(e.button == 1)。我可以使用nsIEnvironment吗?

https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIEnvironment

是否有可能找出有多少按钮的用户鼠标与nsIEnvironment?

谢谢

在处理鼠标事件时,你根本不需要检查这个,实际上也不应该检查这个

文档状态:

对于配置为左手使用的鼠标,按钮操作是相反的。在本例中,从右向左读取值。

所以你应该总是假设event.button == 0(左)是主要的,event.button == 2(右)是次要的,event.button == 1是中键。

如果你因为其他原因需要这个:我不知道有什么方法可以通过XPCOM可靠地检查这个(nsIEnviroment与此完全无关),因为这是桌面环境/操作系统的底层功能,XPCOM不容易暴露。您需要使用js-ctypes或二进制组件编写平台相关的代码。

最新更新