我是phonegap的新手。我正在使用Android的phonegap在eclipse中创建应用程序。我在xml文件夹中添加了phone gap.jar和插件。我还添加了jquery库和phonegap1.1.0 js。我正在尝试实现滑动功能以将一页导航到另一页,但无法正常工作。有人可以告诉我如何解决该问题吗?

我在活动中致电inex.html
这是我的index.html

<html>
    <head>
        <title>sample check</title>
        <link rel="stylesheet" href="www/jquery.mobile/jquery.mobile-1.0rc2.min.css" type="text/css" charset="utf-8" />

        <script type="text/javascript" src="js/fnswipe.js"></script>
        <script type="text/javascript" src="www/jquery.mobile/jquery-1.6.4.min"></script>
        <script type="text/javascript" src="www/jquery.mobile/jquery.mobile-1.0rc2.min.js"></script>
        <script type="text/javascript" charset="utf-8" src="phonegap-1.1.0.js"></script>
    </head>
    <body>
        <div data-role="page" id="home">
            <div data-role="content">
                <p>
                    <ul data-role="listview" data-inset="true" data-theme="c">
                        <li id="listitem">Swipe Right to smple check page</li>
                    </ul>
                </p>
            </div>
        </div>
    </body>
</html>


这是我的js文件

$("#listitem").swiperight(function() {
    $.mobile.changePage("file:///android_asset/www/samplecheck.html");
});


谢谢你的帮助

最佳答案

我遇到了同样的问题,除Android之外,所有滑动事件均正常。为了解决此问题,我必须为Swipe事件设置Threshold值。您可以在调用JS文件中的滑动事件之前进行设置。为了获得最佳结果,我将我设置为:

$.event.special.swipe.scrollSupressionThreshold = 10; // More than this horizontal displacement, and we will suppress scrolling.
$.event.special.swipe.horizontalDistanceThreshold = 30; // Swipe horizontal displacement must be more than this.
$.event.special.swipe.durationThreshold = 500;  // More time than this, and it isn't a swipe.
$.event.special.swipe.verticalDistanceThreshold = 75; // Swipe vertical displacement must be less than this.


这个答案对我有很大帮助:swipeleft/swiperight triggered during vertical scroll in jquery mobile

以及文档:Events -> Touch Events -> Swipe

希望这可以帮助!!

07-24 09:48
查看更多