今天解决了一个前端bug,使用的mui的tab标签切换插件,在改区域滑动时,浏览器会大量的报错:Unable to preventDefault inside passive event listener due to target being...

针对这个问题百度查了一个,用两个办法解决:

方法一:

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

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

方法二

css通配符去掉滑动的默认样式

 * { touch-action: pan-y; }