我正在使用xui-swipe.js
来检测Phonegap应用程序上的左右手势滑动。
它在Android模拟器和iPhone模拟器上都运行良好。但是,当我将此应用程序安装到真实设备(三星Glaxy S3)时,轻扫手势只检测一次事件,之后没有检测到任何事件;无论是左还是右。
以下是用于检测手势的代码块(请注意,xui.js
和xui-swipe.js
都包含在内):
<script type="application/javascript">
function init ()
{
x$("#wrapper").swipe(function(e, data){
var offset = parseInt(sessionStorage.getItem('offset'));
switch(data.direction) {
case 'right':
if (offset>0) {
sessionStorage.setItem('offset', offset-1);
document.location = "file.html";
}
//alert('right');
break;
case 'left':
if (offset<10) {
sessionStorage.setItem('offset', offset+1);
document.location = "file.html";
}else {
document.location = "file-end.html";
}
//alert('left');
break;
}
}, {
swipeCapture: true,
longTapCapture: true,
doubleTapCapture: true,
simpleTapCapture: false
});
}
var _timer=setInterval(function(){
if(/loaded|complete/.test(document.readyState)){
clearInterval(_timer)
init() // call target function
}
}, 10);
</script>
感谢任何帮助。
答案 0 :(得分:0)
我认为你的案例陈述是错误的:
switch (data.type){
case ('direction'):
if (data.direction == 'left') {
i--;
} else {
i++;
}
首先需要检查案例'方向',然后检查它是左还是右。