我想使用 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