我正在用 HTML5 构建一个小游戏。画布元素是进入游戏世界的一个视口。用户可以通过在小图标上单击并拖动鼠标来移动视口在世界中的位置。
问题是当鼠标指针碰到屏幕边缘时滚动停止。很有可能,这将严重限制向其中一个方向的滚动,因为图标将位于页面的某个角落。
我能想到的唯一技术解决方案是以某种方式固定鼠标指针在图标上的位置并检测每帧的相对移动。基本上我只会在每次拖动事件后将指针位置重置回图标的中心。不幸的是,我相当肯定这是不可能的。从可用性和安全性的角度来看,使用用户指针是一个很大的禁忌。
那么,有没有其他方法可以做我想做的事?我主要在这里寻找技术想法,但也欢迎提供更合适的界面的建议。