2015-10-06 2 views
0

Я использую функцию jQuery из этого link, чтобы распознать события «проведите по экрану» и «проведите по экрану».JQuery - распознать прокрутку вверх и вниз

Функция работает нормально, если я использую только swipedown или вверх, однако я не могу узнать, как распознать оба направления внутри одной функции. Например:

$("body").on("swipeupdown",function(){ 

    if (swipeUp == true) { 

    alert("SwipedUp"); 
    } 

if (swipeDown == true) { 

    alert("SwipedDown"); 
    } 

}); 

Любая идея, как реализовать это?

Я также пробовал код, который ниже работает, однако он подсчитывает swipes и показывает много предупреждающих окон сверхурочных, которые я прокручиваю.

$("body").on("swipeupdown",function(){ 


    $("body").on("swipedown",function(){ 

    alert("down"); 

    }); 

    $("body").on("swipeup",function(){ 

    alert("up"); 

    }); 


}); 
+0

Предлагает проверить структуру JQuery Mobile. Это добавляет виртуальные события для прокрутки. – Twisty

+0

Кроме того, где определены 'swipeUp' и' swipeDown'? – Twisty

+0

Привет Твисты, они не определены, это был просто пример того, чего я пытался достичь. См. Мое редактирование – SNos

ответ

1

Таким образом, вы можете поймать больше информации о событии с помощью этого:

$(function(){ 
// Bind the swipeHandler callback function to the swipe event 
    $("body").on("swipe", swipeHandler); 

    // Callback function references the event target and adds the 'swipe' class to it 
    function swipeHandler(event){ 
     console.log(event); 
    } 
}); 

Рабочий пример: http://jsfiddle.net/Twisty/be5z0vko/

Это даст вам объект, и вы можете найти способы, чтобы определить, в каком направлении салфетка был. Например, event.swipestart и event.swipestop содержат coords, поэтому вы можете использовать их для определения направления.

Также смотрите здесь: http://developingwithstyle.blogspot.com/2010/11/jquery-mobile-swipe-up-down-left-right.html В глубине, но было бы намного точнее, если вам это нужно.

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