我想使用 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
关于javascript - 我如何从 videojs 中禁用/删除 touchstart 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59197343/