3

我有一个使用 Angular 的 HTML5 和 CSS 的简单网页游戏。它使用 Angular 的 ng-mousedown、ng-mousemove 和 ng-mouseup 指令来让用户突出显示游戏中的字母和图块并左右“滑动”。

在浏览器的桌面上工作得很好。然而,在 iPad 或 iPhone 上的移动版 Safari 中,似乎没有一个鼠标动作能正确触发——触摸动作并没有影响游戏元素,而是试图平移和缩放浏览器窗口本身。

到目前为止,我一直将 jQuery 排除在我的解决方案之外。我之前使用 jQuery-touch-punch 让 jQUery-UI 的拖放功能在移动 Safari 上运行。但是什么是无 jQuery 的解决方案?我只是希望该应用程序的行为方式与在桌面浏览器上的行为方式相同。

提前致谢!

4

1 回答 1

1

ngTouch听起来像你想要的模块。ngClick是 jQuery 单击的抽象,以支持鼠标和触摸事件。如果您想在用户按下时突出显示某些内容,则此代码段可能对文档有所帮助:

该指令还设置 CSS 类 ng-click-active 在元素被按住时(通过鼠标单击或触摸),因此您可以根据需要重新设置被按下的元素的样式。

此外,ngSwipeLeftngSwipeRight允许设置滑动事件回调。

但是,听起来您的游戏可能需要比简单地绑定到这 3 个指令更复杂的行为。如果您使用创建自己的指令并使用$swipe服务,您可能可以更好地控制行为。

于 2013-11-26T05:25:01.153 回答