[note] hammer-js 筆記
筆記
- Pointer: 每 new 一個 Hammer() 就稱做一個 Pointer
- Recognizer:Hammer.pan() 這種稱作 Recognizer
- Manager:
new Hammer.Manage(element)
,它和new Hammer()
一樣,但是不會有預設的 Recognizer - 透過
.add()
把事件給 Manager 時,不同的順序會有影響,陣列中前者會先被偵測(放前面比較容易被偵測)。因此在放的時候會把最不容易被觸發的放在陣列前面。 - 如果用引號,會去抓事件名稱;如果沒用引號,則是抓變數名稱。
recognizeWith
和requireFailure
使用時,前後順序的影響不大。
碰到同時觸發的事件
當碰到可能會同時觸發的事件時(例如 tripleTap, doubleTap 和 singleTap),若有需要,則可進一步使用 recognizeWith
和 requireFailure
設定。
recognizeWith
透過recognizeWith
可以同時觸發兩個事件,前後順序的影響不大
pinch.recognizeWith(rotate); // 觸發 pinch 的時候可以同時觸發 rotate
requireFailure
透過requireFailure
可以避免同時觸發兩個事件
tripleTap.requireFailure(doubleTap); // 觸發 tripleTap 時不會同時觸發 doubleTap
tripleTap.requireFailure(singleTap, doubleTap); // 觸發 tripleTap 時不會同時觸發 doubleTap 和 singleTap