Jquery Mobile 在 Android 4.2.2 中滑动事件不起作用
Jquery Mobile swipe events in Android 4.2.2 not working
我编写了一个使用JQuery移动向左滑动和向右滑动事件的移动Web应用程序,但这些在运行Android 4.2.2的三星Galaxy S4上不起作用。 在标准网络浏览器或 Chrome 中运行网络应用也存在相同的问题:未检测到滑动事件。
以下是我尝试检测在我测试过的其他设备中运行良好的事件的方式,甚至是 Android 设备(但不是 Android 4.2.2):
$('#showImage').on("swipeleft", function (event) {
if (currentScale != initialScale) return;
if (currentPage < maxPage) {
++currentPage;
img.src = document.getElementById("page" + zeroPad(currentPage, 2) + "url").value;
}
});
$('#showImage').on("swiperight", function (event) {
if (currentScale != initialScale) return;
if (currentPage > 1) {
--currentPage;
img.src = document.getElementById("page" + zeroPad(currentPage, 2) + "url").value;
}
});
在代码方面,我可以做些什么来捕获 Android 4.2.2 中的这些事件?
你在这里有两个问题。
首先是由 JQM 中的一个错误引起的,该错误已解决但尚未实现 https://github.com/jquery/jquery-mobile/issues/5534
基本上,滑动事件测量的最小距离必须考虑设备的像素密度。因此,在 JQM 的情况下,以下更改 touch.js 将解决问题:
horizontalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30;
verticalDistanceThreshold = window.devicePixelRatio >= 2 ? 15 : 30;
第二种是奇巧发射触摸取消而不是触摸端。解决方案是将触摸取消委托给触摸端。
相关文章:
- JsFiddle上的鼠标事件不起作用
- 链接上的IE10 jquery句柄单击事件不起作用
- jQuery加载完成事件不起作用
- 覆盖单击事件不起作用
- 单击事件不起作用
- 为什么body元素上的onclick事件不起作用
- 追加Jquery后的Binding Click事件不起作用
- chrome中的onmouseover(下拉选项标记)事件不起作用-php,javascript
- jQuery调用keyup事件不起作用
- 选择选项淘汰赛事件不起作用
- pixijs 鼠标关闭事件不起作用(任何版本)
- D3.js鼠标事件不起作用
- D3js 饼图单击事件不起作用
- j查询动画重置后事件不起作用
- jquery 1.7追加后点击事件不起作用
- 当我将位置更改为绝对时,画布精灵表和触摸事件不起作用
- 引导程序弹出窗口(bootbox)中的Javascript事件不起作用
- 在Javascript中动态添加列时,单击事件不起作用
- 敲除数据绑定=“;html:html,内部html点击事件不起作用
- 当元素在事件绑定后附加到DOM时,触摸事件不起作用