Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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 如何防止dragend后发生touchend事件?_Javascript_Jquery_Mobile_Jquery Events - Fatal编程技术网

Javascript 如何防止dragend后发生touchend事件?

Javascript 如何防止dragend后发生touchend事件?,javascript,jquery,mobile,jquery-events,Javascript,Jquery,Mobile,Jquery Events,我在一个移动网站上工作,在我不想让事件发生的时候,我正在努力应对这些事件 为了简单起见,在jQuery中编写了如下内容: el.on('touchend', function(ev) { ev.preventDefault(); // fire an ajax call }; 但是,有时用户在滚动页面时会点击该项,导致ajax请求触发,从而更改页面状态 我想不出一个办法来解决这个问题。停止播放不起作用,所以我决定关注dragstart和dragend事件 如果我在touchen

我在一个移动网站上工作,在我不想让事件发生的时候,我正在努力应对这些事件

为了简单起见,在jQuery中编写了如下内容:

el.on('touchend', function(ev) {
    ev.preventDefault();
    // fire an ajax call
};
但是,有时用户在滚动页面时会点击该项,导致ajax请求触发,从而更改页面状态

我想不出一个办法来解决这个问题。停止播放不起作用,所以我决定关注dragstart和dragend事件

如果我在touchend回调中发出警报,我会确认touchend事件确实在我停止拖动后触发


有人知道如何防止其他事件发生吗?我希望我只是瞎了眼,错过了一些显而易见的事情。

你不能阻止事件触发,你只能阻止该事件的默认行为发生


如果您担心在触发touchend事件之前页面的状态会发生变化,那么您应该更改函数以检查并解释状态变化

我认为在这种情况下你应该使用

event.stopImmediatePropagation(); event.stopImmediatePropagation();