2013-04-09 88 views
3

我正尝试在移动浏览器上使用tap/doubletap事件。我有以下代码:在移动设备上点击并双击事件

$(function() { 
    $(".vppop").mouseenter(function() { // Desktop browsers only 
     $(".vppop").addClass("vppopscale"); 
    }); 
    $(".vppop").mouseleave(function() { // Desktop browsers only 
     $(".vppop").removeClass("vppopscale"); 
    }); 
    $(".vppop").on('tap', function(e) { // Mobile browsers only 
     e.preventDefault(); // Stop from following link 
     $(".vppop").addClass("vppopscale").delay(300).removeClass("vppopscale"); 
    }); 
    $(".vppop").on('doubletap', function() { // Mobile browsers only 
     // Go to Link 
    }); 
}); 

使用手指插件针对移动事件:

无法获得自来水事件,防止链路以下&不知道我需要doubletap事件得到它遵循链接。谢谢您的帮助。

回答

5

我刚才看到这个问题。这可能为时已晚,但如果您将Finger更新为最新版本,您将能够以此方式防止默认行为。旧版本不支持此功能。

但是,如果附加两个tapdoubletap事件侦听器相同的元素,并且tap防止默认行为,那么它也将申请doubletap

所以,你可能想在你的doubletap听众手动打开链接:

$(".vppop").on('doubletap', function() { // Mobile browsers only 
    window.location = this.href; 
}); 

希望这有助于,即使这是一个有点晚:)