ユーザーがタッチスクリーンデバイス上にいるとき、斜めスクロールを制限したいと思っています。または垂直である。タッチスクリーン上で一度に一方向にスクロールするように剣道グリッドを制限する
タッチスクロールが有効になっているかどうかを検出し、x座標とy座標を出力できるJS Fiddleを設定しました。しかし、私は意図された方向を計算するために必要なオフセットや何かを見ません。
リンゴが制限するdirectionalLockEnabled
を使用していることは知っています。このようなものが剣道で利用可能かどうかは疑問です。そうでない場合は、ユーザーがスクロールする方向を把握し、他の座標を「フリーズ」する方法があります。
私が作成したA JSフィドル(dataBound
方法で関連する部分):
http://jsfiddle.net/dmathisen/tskebcqp/
(関連するコードのみtouch上で動作します...しかし、あなたはdevのツールでモバイルエミュレーションを有効にする場合は動作するはずです)
もう1つの問題は、スクロールイベントがトリガーされる時間です。作業しているときに、おそらくトリガされる頻度を処理するためにデバウンスを設定することができます。
を比較する。これは素晴らしいですし、私はそれを試してみましょうでる。 jQuery 1.7の時点では、ユーザーを「オン」にして「委任」しないことをお勧めします。したがって、$(document).on( 'touchstart'、 '.yourWrap'、function(e){...}); 'http://api.jquery.com/delegate/から 'jQuery 1.7の時点で、 delegate()は.on()メソッドに取って代わられました。 " – dmathisen
このコードは、ラップがユーザーによって生成されるスクリプトの一部です。私の間違い。 – Dux