2015-02-18 26 views
5

Hammer.js ile multi-touch panning uygulamasında zorluklar yaşıyorum. Kaydırma olayları sadece tek işaretçilerle tetiklenir. İki parmağınızla sürüklemeye çalışırsam en az bir parmağı serbest bırakana kadar ateş etmez. Çekiç konfigürasyonuna özel bir şey yapmak zorunda mıyım?Hammer.js ile Çoklu Dokunma Panning

DÜZENLEME: Pan olayı için 2 işaretçi yapılandırabildiğimi zaten öğrendim, ancak şu anda Chrome'un iki parmağınızla bir bağlam menüsünü açmak için yerleşik bir özelliği olduğunu görüyorum. tanınmaktan kayıyor. Sadece 'contextmenu' olayını yakalayıp preventDefault() işlevini çağırırsam, pan tanıyıcısını tamamen (tamamen) devre dışı bırakır. Başka herhangi bir yol?

BR, Daniel

+0

Chrome Desktop, Android/iOS için Chrome hakkında mı konuşuyorsunuz? Hammer.js 2.0.4'teki Multitouch kaydırma, tüm Chrome Sürümlerinde (Masaüstü, Android) az çok benim için çalışıyor. Hammer.js 2.0.4 'ev.deltaXY' (multitouch panning) değerlerini atlama ve 'panstart' ile bir sorun olsa da (eğer bahsettiğiniz buysa) bazı sorunları vardır, ancak bunlar için her ikisi için de geçici çözümler vardır. sabit. – Daniel

+1

Pan olayı için 2 işaretçiyi nasıl yapılandırabilirsiniz? Herşeyi denedim ama boşuna. Lütfen bana yardım edebilir misiniz? – myTerminal

cevap

1

Sen 'çimdik' olayını kullanmalıdır. İki parmakla kaydırma ve yakınlaştırma için. PINCH olayı şu özelliklere sahiptir: parmak olaylarıyla 'işaretçiler';

var previous_pinch_delta = { 
     x: 0, 
     y: 0 
    }; 
    hammered.on('pinch', function(e){ 
     camera.pan(e.deltaX-previous_pinch_delta.x, e.deltaY-previous_pinch_delta.y); 
     previous_pinch_delta = { 
      x: e.deltaX, 
      y: e.deltaY 
     }; 
     }); 
+0

Bunun için teşekkürler! İki parmağım kaydırma ve ölçekleme arasında “e.scale” de ayrımcılık yaptım. Mükemmel değil (ölçekleme eşiğine ulaşana kadar birazcık kayıyorsunuz) ama yine de harika. –

+0

Bu cevabı anlamıyorum. Kaydırma ve yakınlaştırma arasında nasıl ayrım yaptığınızı açıklar mısınız? Sıkıştırma geri çağrınızda sadece yakınlaştırma, yakınlaştırma değil gibi görünür. – Michael

+0

Merhaba Mike. Ne yazık ki açıklamak için yeterli zamanım yok, ama dokunmatik sensörümün tam bir kaynağını kopyalayabilirim, umarım size yardımcı olur: https://pastebin.com/Xk4AmcdC – saike