ich es tat das event.gesture.preventDefault mit:
$('#horizontalCarousel').hammer({ drag_lock_to_axis: true }).on("swipe drag", function(event) {
event.gesture.preventDefault();
if(event.type == "swipe"){
swipeAction(event);
} else {
dragAction(event);
}
});
Hier ist die documentation
[EDIT]
gegeben
Meine Antwort war nur, um Sie wissen zu lassen, dass Sie das falsche Ereignis verwendet haben. PreventDefault(). Tatsächlich haben Sie auch die falsche Syntax verwendet, um die Ereignisrichtung zu überprüfen. Sie sollten in der Lage sein, es auf diese Weise zu verwalten, obwohl ich es nicht getestet haben:
$(document).hammer({ drag_lock_to_axis: true }).on("swipe drag", function(event) {
if (event.gesture.direction == Hammer.DIRECTION_UP || event.gesture.direction == Hammer.DIRECTION_DOWN){
event.gesture.preventDefault();
}
});
2 Dinge geändert: event.gesture.direction und event.gesture.preventDefault(); Die event.direction war der Weg, dies auf älteren Versionen von hammer js zu tun.
Hinweis: Wenn Sie etwas mit dem Swipe-Event machen möchten, zum Beispiel: Wenn Sie beim Swiping einen größeren Betrag horizontal springen, können Sie meine Antworten kombinieren.
Haben Sie schon einmal die aktualisierte Antwort versucht? –