0

xui-swipe.js用于检测 Phonegap 应用程序上的左右滑动手势。

它在 android 模拟器和 iPhone 模拟器上运行良好。但是当我将此应用程序安装到真实设备(Samsung Glaxy S3)时,滑动手势仅检测一次事件,之后什么也检测不到;无论是左还是右。

这是用于检测手势的代码块(请注意,两者xui.jsxui-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>

任何帮助表示赞赏。

4

1 回答 1

0

我认为你的案例陈述是错误的:

switch (data.type){
    case ('direction'):
      if (data.direction == 'left') {
        i--;
      } else {
        i++;
     }

您首先需要检查案例“方向”,然后检查它是左还是右。

于 2012-11-22T19:28:34.007 回答