3

Angular を使用して HTML5 と CSS で動作する単純な Web ゲームがあります。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 に答える