我如何 disable/remove 来自 videojs 的 touchstart 事件?

How I disable/remove the touchstart event from videojs?

我想使用 preventDefault 禁用 videojs 中的 touchstart 事件。

player.on('touchstart', (e) => { e.preventDefault() });

但是我得到这个错误:

Unable to preventDefault inside passive event listener invocation.

我也没有处理程序可以使用 removeEventListener

我能做些什么来删除这个事件?

如果你想删除事件试试这个:

 player.off('touchstart',function(){})

如果您想自定义并防止默认,请尝试以下操作:

player.on('touchstart', (e) => { e.preventDefault() },{passive: false});

也可以通过避免提供函数来完全删除事件:

player.off('touchstart');

或者可以提供一个数组:

const eventsToRemove = [
  'mousemove',
  'mouseover',
  'mouseup',
  'mousedown',
  'mouseleave',
  'touchstart'
];

player.off(eventsToRemove);

更多详情: https://docs.videojs.com/docs/api/player.html#Methodsoff