240
世界上有10种人,一种懂二进制,另一种不懂二进制。

滑动时候警告:Unable to preventDefault inside passive event listener

1 前言

在制作2048时,需要在手机端添加滑动检测事件,然后发现控制台有警告,如下:

main2048.js:218 [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080

2 解决办法:

在touch的事件监听方法上绑定第三个参数{ passive: false },
通过传递 passive 为 false 来明确告诉浏览器:事件处理程序调用 preventDefault 来阻止默认滑动行为。

方法1

elem.addEventListener(
  'touchstart',
  fn,
  { passive: false }
);

方法2

* { touch-action: pan-y; } 
 使用全局样式样式去掉  

3 参考

1. 滑动时候警告:Unable to preventDefault inside passive event listener 

posted @ 2018-12-28 17:40  unionline  阅读(1298)  评论(0编辑  收藏  举报