2015-07-14 2 views
1

У меня есть выпадающее меню на мобильной версии моего сайта. Я привязываю обработчики для жестов singletap и doubletap. Все остальные жесты, которые я хочу по умолчанию изменить их нормальное поведение. Независимо от того, что я пытаюсь, начало салфетки или кастрюли вызывает событие singletap и отвечает соответственно. Вот мой код:Предотвратите срабатывание пускового ответвителя

$(document).ready(function() { 
    var menuLinks1 = document.querySelectorAll(".menu.level1 a.item"); 
    for (var i = 0; i < menuLinks1.length; i++) { 
     var menuLink1 = menuLinks1[i]; 
     if (menuLink1) { 
     var hammerMgr = new Hammer.Manager(menuLink1); 

     hammerMgr.add(new Hammer.Tap({ event: "doubletap", taps: 2 })); 
     hammerMgr.add(new Hammer.Tap({ event: "singletap" })); 
     hammerMgr.add(new Hammer.Tap({ event: "pan" })); 
     hammerMgr.add(new Hammer.Tap({ event: "swipe" })); 

     hammerMgr.get("pan").set({ direction: Hammer.DIRECTION_ALL }); 

     hammerMgr.get("doubletap").recognizeWith("singletap"); 
     hammerMgr.get("singletap").requireFailure("doubletap"); 
     hammerMgr.get("singletap").requireFailure("pan"); 
     hammerMgr.get("singletap").requireFailure("swipe"); 

     hammerMgr.on("doubletap", function (e) { 
      doubletapMenuItem(e); 
     }); 

     hammerMgr.on("singletap", function (e) { 
      toggleSubmenu(e); 
     }); 
     } 
    } 
    }); 

Что мне не хватает или что-то не так? Как мне настроить это так, чтобы салфетки или кастрюли не срабатывали?

Спасибо!

ответ

0

Не мог понять это и не получил ответов на мой вопрос, поэтому переключился на SmartMenus, и он отлично работает.

Смежные вопросы