繁体   English   中英

Microsoft Edge中未触发“ touchmove”事件

[英]“touchmove” event is not triggered in Microsoft Edge

我需要根据touchmove事件的clientx和clienty位置检测拖动元素时的情况。 在Chrome中,可以识别touchmove事件并正确返回位置,而在Microsoft Edge中则不能识别touchmove事件。

<div id="ele" style="position:absolute; top:0px; left:0px; width:100px;height:100px;border:1px solid"></div>

$(document).ready(function() {
   document.getElementById('ele').addEventListener('touchmove', function(e) 
   {
       console.log('event triggered');
   })
 });

我在Edge中将事件类型作为mousemove获取,但我想改为获取touchmove事件。 有什么办法吗?

尝试将其添加到HTML文件:

canvas { touch-action: none;}

您需要添加“ passive:false”,如下面的一些示例代码所示。 这是因为默认情况下被动设置为true。 我花了几天的时间弄清楚这个!

document.addEventListener('touchmove', function(e) {
    e.preventDefault();
}, { passive: false });

编辑。 我相信另一篇文章是正确的,这是错误的,但是为了防万一,我将其留在了这里,因为其他浏览器需要使用被动式的:false功能来满足您的要求

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM