作者:勇敢的心yzw1979_886 | 来源:互联网 | 2024-11-12 16:04
在使用 video.js 进行视频切换时,可能会遇到以下错误:
video.js:95 Uncaught (in promise) DOMException: The play() request was interrupted by a new load request.
这个错误通常发生在尝试播放一个视频时,另一个新的加载请求中断了当前的播放请求。以下是解决此问题的方法:
1. 确保视频完全加载后再播放
在调用 play() 方法之前,确保视频已经完全加载。可以通过监听 'loadeddata' 事件来实现:
player.on('loadeddata', function() {
player.play();
});
2. 使用暂停和重置方法
在切换视频之前,先暂停当前视频并重置播放器状态:
player.pause();
player.currentTime(0);
player.src({
type: 'video/mp4',
src: 'new-video-url.mp4'
});
player.load();
player.play();
3. 处理 Promise 错误
如果 play() 方法返回一个 Promise,可以在调用 play() 时处理可能的错误:
player.play().catch(function(error) {
console.error('Error playing video:', error);
});
通过以上方法,可以有效解决 video.js 在视频切换时出现的播放错误。