jquery - certain touch events cause multiple events, how can I limit to the desired event? -


so if tap or taphold works expected, if swipe should 2 events. swipe , swipedirection, tap event well. there way remove tap event if swipe or swipedirection occurs?

live example:

html:

<div data-role="page" id="home">      <div data-role="content">         <div id="display-event" class="add-border">             <p>tap, taphold (for 1 second), swipe, swiperight or swipeleft</p>         </div>     </div> </div> 

js:

function bindevent(element) {     element.bind('tap taphold swipe swiperight swipeleft', function(event, ui) {        alert('event: '+event.type);      }); }  bindevent($('#display-event')); 

related question: swipe event triggers tap event ipod touch

update: - http://jsfiddle.net/hjtaq/31/ (using jaspers method)

if want validate first event fires can set timeout , preventdefault() rest of events fired:

function bindevent(element) {     element.bind('tap taphold swipe swiperight swipeleft', function(event, ui) {        if (event_ok == false) {            event.preventdefault();            return false;        } else {            event_ok = false;            settimeout(function () {                event_ok = true;            }, 500);            alert('event: '+event.type);        }     }); }  var event_ok = true; bindevent($('#display-event')); 

Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -