我正在开发一个 HTML5/JavaScript 浏览器内游戏,我在 Firefox 中遇到了一些奇怪的行为,我希望有人能帮助我。游戏位于以下标签中:
<div id="game" tabindex="0"> ... </div>
...tabindex
设置属性以使元素可聚焦。这个想法是当div#game
元素失去焦点时,游戏会自动暂停。用户通过keydown
事件与游戏进行交互,这在大多数情况下都有效:用户按下一个键,游戏响应,仅此而已。但是,有时,当用户按下某个键时,div#game
会失去焦点,焦点会转到 Firefox 地址栏。我无法弄清楚任何模式,并且在确定是否在失去焦点之前div#game
接收到事件时遇到了麻烦。keydown
我也无法在 Chrome 中复制这种行为。
有没有人经历过类似的事情,或者有任何想法如何让我的div
元素保持焦点?谢谢。