简单解释我有这段代码:
$(".button").swipe({
swipe: function () {
$("#output").append("You swiped!");
}
}).click(function () {
$("#output").append("You clicked!");
});
我希望能够处理我的元素上的滑动(TouchSwipe插件)并点击。问题是触摸也是一次点击。所以如果我刷卡,我会先得到#34;你刷了!"然后是"你点击了!"。点击即可。
如果.swipe()已被执行,是否可以停止执行.click()?当然,这必须每次都有效。
答案 0 :(得分:1)
根据你提供的实现,我猜你正在使用jQuery TouchSwipe插件,对吗?
是的,你注意到你正在使用jQuery TouchSwipe插件,我的坏:):
您应该使用TouchSwipe点击事件代替jQuery点击事件(不考虑其他插件事件)。此实现有助于区分点击与滑动事件,并有助于确保只有一个被执行。
jQuery(function()
{
jQuery('.button').swipe({
tap: function()
{
alert('tapped');
},
swipe: function(event, direction, distance, duration, fingerCount)
{
alert('swiped');
}
});
});