我搜索了网络和这个网站,但我没有找到适合我的问题的解决方案。
情况 : - 我有一个JQM基本页面,上面有listviews。 - 一些事件处理滑动等
问题 : - 当我通过单击某个项目滚动列表,按住它并向下或向上滑动时,它会完美滚动,但是当我释放屏幕然后滚动再次在该列表项目上,它什么也没做。
我做了一个jsfiddle在手机上重现它:http://jsfiddle.net/WQdJk/9/ * 这是代码 *:
<link rel="stylesheet" type="text/css" href="css/style.css">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.1/jquery.mobile-1.4.1.min.css" />
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.1/jquery.mobile-1.4.1.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true"></script>
<script>
$(document).on('click', 'ul li a', function(){
$('h3').css("color", "orange");
});
$(document).on( "swipeleft swiperight", function( e ) {
if ( e.type === "swipeleft" )
$("h3").css("color","blue");
else
$("h3").css("color","green");
});
</script>
<div data-role="page" id="index" data-theme="a">
<div data-role="header" class="header" data-position="fixed" data-tap-toggle="false">
<h3>TEST</h3>
</div>
<div data-role="content" style="margin-top:50px; height:500px; overflow:scroll;">
<ul data-role="listview">
<li><a data-role="button" data-icon="home">Accueil</a></li>
<li><a data-role="button" data-icon="check">Tâches</a></li>
<li><a data-role="button" data-icon="calendar">Rendez-vous</a></li>
<li><a data-role="button" data-icon="grid">Dossiers</a></li>
<li><a data-role="button" data-icon="gear">Paramètres</a></li>
<li><a data-role="button" data-icon="home">Accueil</a></li>
<li><a data-role="button" data-icon="check">Tâches</a></li>
<li><a data-role="button" data-icon="calendar">Rendez-vous</a></li>
<li><a data-role="button" data-icon="grid">Dossiers</a></li>
<li><a data-role="button" data-icon="gear">Paramètres</a></li>
<li><a data-role="button" data-icon="home">Accueil</a></li>
<li><a data-role="button" data-icon="check">Tâches</a></li>
<li><a data-role="button" data-icon="calendar">Rendez-vous</a></li>
<li><a data-role="button" data-icon="grid">Dossiers</a></li>
<li><a data-role="button" data-icon="gear">Paramètres</a></li>
<li><a data-role="button" data-icon="home">Accueil</a></li>
<li><a data-role="button" data-icon="check">Tâches</a></li>
<li><a data-role="button" data-icon="calendar">Rendez-vous</a></li>
<li><a data-role="button" data-icon="grid">Dossiers</a></li>
<li><a data-role="button" data-icon="gear">Paramètres</a></li>
</ul>
</div>
</div>
您能否就如何解决此问题向我提出建议或提示?滚动后,按钮似乎处于待机状态......
提前致谢
答案 0 :(得分:0)
这是由于JQM中的错误已经解决但尚未实施https://github.com/jquery/jquery-mobile/issues/5534
基本上,滑动事件测量的最小距离必须考虑设备的像素密度。因此,在JQM的案例中,对touch.js的以下更改将解决问题:
horizontalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30;
verticalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30;