PinchRecognizer
は指定したポインタ数を正確にチェックします(これは実際にスーパークラスAttrRecognizer
でチェックされています)。ポインタのパラメータを指定しないと3つのポインタが検出されます。
とにかく、2つの解決方法があります。ひとつは自分のピンチレコグナイザを書くことです。hammer.jsのソースコードを見て、あなたが探しているのは、ポインタの数をチェックするsuperメソッドを呼び出さないで、ポインタの数がそれ以下であることを確認するだけですあなたが望むものに。
もっと簡単な解決策は、必要なポインターの数ごとにPinchRecognizerを定義することです。したがって、4本以下の指を検出したい場合は、次のようにしてください:
var mc = new Hammer.Manager(element);
mc.add(new Hammer.Pinch({ event: 'pinch2', pointers: 2, threshold: 0 }));
mc.add(new Hammer.Pinch({ event: 'pinch3', pointers: 3, threshold: 0 }));
mc.add(new Hammer.Pinch({ event: 'pinch4', pointers: 4, threshold: 0 }));
免責事項:これはテストしていません。すべての認識装置をリンクするには、recognizeWith
に電話する必要があります。
あなたの答えをありがとう。私はついにそれを別の方法で解決しました。私の答えをチェックしてください! – Parth
2つ目の解決策はあまりにも扱いにくいようです。 2から10までのポインタを使用し、それらを処理します。幸運にも、ポインタ:0がなければピンチレコグナイザを修正する必要がありました。ところで、3つのポインタが検出されているのが実際には驚くべきことです。 – Parth