javascript-在浏览器窗口之外捕获鼠标位置?

在浏览器中(使用WebGL和类似工具)创建沉浸式体验的一个主要障碍是对鼠标控件的一系列限制.

例如,第一人称射击游戏控制方案本质上要求程序抓住鼠标并将其重新居中,以便允许光标在任何方向上无限移动.这是一个禁忌,因为它将给网络程序员过多的控制权.希望有一天,我们将看到一个允许站点请求允许移动鼠标以允许这种行为的网站的插件.

但是,我认为有一些方法可以使事情做得更好.我想知道一旦鼠标移出窗口(焦点仍在窗口上)是否可以允许访问鼠标位置?

我正在使用Google Chrome浏览器玩此游戏:http://www.chromeexperiments.com/detail/x-wing/?f=

而我最大的问题是要转弯,我必须小心地将鼠标放在浏览器窗口的一角.如果我将其推离窗口,我的飞船将停留在鼠标最后一个窗口的位置,而该位置恰好不在角落.我会撞到墙上.

为了使它更好,当鼠标在窗口之外时,浏览器应该能够接收鼠标更新.在这种类型的游戏中,如果鼠标离开窗口,它将继续向浏览器发送更新的位置.

有什么规定吗?

最佳答案
与允许开发人员重新定位光标相比,这确实是一个更大的安全问题.答案是否定的,没有这样的事情.而且可能永远不会有一个.抱歉!

更新:当然,我是在谈论在窗外拍摄是一个问题.很可能会有一个锁定鼠标的API,也许是在征求用户许可之后.正如nickf所指出的,他们已经在研究-https://www.w3.org/TR/pointerlock/

原始的无效链接-http://dvcs.w3.org/hg/webevents/raw-file/default/mouse-lock.html

转载注明原文:javascript-在浏览器窗口之外捕获鼠标位置? - 代码日志