我正在使用这个非常棒的代码来模拟Android http://pervasivecode.blogspot.co.nz/2011/11/android-phonegap-active-css-pseudo.html上的触摸事件。效果很好,但太敏感了。例如,如果您有一个列表,并且当您触摸列表中任何突出显示的链接时想要向下滚动。
$(document).ready(function(){
if (navigator.userAgent.toLowerCase().indexOf("android") > -1) {
$('a')
.bind("touchstart", function () {
$(this).addClass("fake-active");
})
.bind("touchend", function() {
$(this).removeClass("fake-active");
});
}
});
是否可以延迟课程更改,还是可以使用其他触发器?
答案 0 :(得分:1)
为避免在滚动时激活链接,您可以使用touchend触发类更改,并检查滚动(如果存在)。像这样......
if (navigator.userAgent.toLowerCase().indexOf("android") > -1){
var scroll = 0;
$('a').on("touchstart",function(){
$('a').removeClass("fake-active");
}).on("touchend",function(){
if(scroll == 0){
$(this).addClass("fake-active");
}
scroll = 0; //Ideally should be set when scrolling is finished
});
$('ELEMENT-THAT-IS-SCROLLING').scroll(function(){
scroll = 1;
});
}