Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery移动库-错误扫描检测_Javascript_Jquery_Html_Mobile - Fatal编程技术网

Javascript jQuery移动库-错误扫描检测

Javascript jQuery移动库-错误扫描检测,javascript,jquery,html,mobile,Javascript,Jquery,Html,Mobile,所以我的代码中有一个问题。我只想检测左右滑动。我对图书馆提供的其他活动不感兴趣 我正在使用jQuery移动库,但是它有缺陷 我的代码预期的行为是检测左右滑动 接受的行为。首先成功检测到刷卡,然后未检测到(或者至少可能是,可能不是…)。通常它检测到前3次刷卡,然后停止检测 我注意到,每次刷卡后,如果您在浏览器/文档中单击,则下次刷卡都会被检测到 因此,如果您在滑动之间单击html文档,它将起作用。如果你不点击/轻敲而进行多次刷卡,那么它似乎不起作用 我在Chrome 43.x版和Safari移动浏

所以我的代码中有一个问题。我只想检测左右滑动。我对图书馆提供的其他活动不感兴趣

我正在使用jQuery移动库,但是它有缺陷

我的代码预期的行为是检测左右滑动

接受的行为。首先成功检测到刷卡,然后未检测到(或者至少可能是,可能不是…)。通常它检测到前3次刷卡,然后停止检测

我注意到,每次刷卡后,如果您在浏览器/文档中单击,则下次刷卡都会被检测到

因此,如果您在滑动之间单击html文档,它将起作用。如果你不点击/轻敲而进行多次刷卡,那么它似乎不起作用

我在Chrome 43.x版和Safari移动浏览器(Iphone和笔记本电脑)上测试了这一点。我不知道如何解决这个问题

我尝试过的事情: 为了确保没有其他脚本或代码中的某些内容导致此问题,我制作了一个JSFIDLE,其中只包含与此事件相关的内容。还是同一个问题。我还尝试了不同的jQuery版本

我想这可能是焦点问题,比如在弹出警报后,文档失去焦点或其他东西,您必须再次单击其中的内容。在每次滑动/警报后尝试将焦点设置为div或html文档,但似乎没有效果

我还认为可能是警报导致了这种情况,所以我取消了警报并添加了另一种检测刷卡的方法,比如添加一个用于刷卡检测的计数器,并在每次检测到刷卡时用计数填充html元素。也没有成功

JS小提琴:

HTML:

 <div class="container">
        Swipe Me
    </div>

<div id="counter"></div>
css:

外部资源:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
  <script type="text/javascript" src="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>


非常感谢您对此事的意见,并提前向您表示感谢

我找不到任何关于这种bug的信息,但这个问题似乎出现在jQuery Mobile 1.4.4中。也许您可以尝试代替jQuery Mobile。

在什么设备上进行测试?我无法重现你的问题。我在我的笔记本电脑上试用了chrome 43.x版,在笔记本电脑上试用了firefox,在safari我的Iphone上试用了。更新的问题。所以如果你在滑动框上滑动10次,那么所有10次都会被检测到?对我来说,它先检测到2-3次,然后才检测不到。看起来3-4次中有一次它不会被触发。你能试试jQuery Mobile 1.4.2吗?版本1.4.2实际上起作用了-。-“现在我为没有在询问之前尝试所有版本而感到难过。我尝试更改jQuery库。。你能不能把它作为一个答案贴出来,这样我就可以接受了。
.container {
    width:100px;
    height:100px;
    background:black;
    color:white;
}
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
  <script type="text/javascript" src="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>