<video id="videoElement" style="object-fit:fill"
:src="playUrl" :poster="coverUrl" x-webkit-airplay="true"
x5-video-player-fullscreen="true" x5-video-orientation="portraint"
x5-playsinline="true" playsinline="true" webkit-playsinline="true"
controlsList="nodownload" preload="metadata" controls class="prism-player">
</video>
尝试效果:
let video = document.getElementById('videoElement')
video.addEventListener('webkitbeginfullscreen', function() {
this._exitfullscreen = false;
});
video.addEventListener("webkitendfullscreen", function(){
this.exitTimeStamp = new Date().getTime();
console.log('触发了 退出全屏',this.exitTimeStamp);// ios退出全屏之前 如果之前是播放状态,先触发paused状态(可以监听到) 如果是暂停状态,不会触发pause了。 这个状态一直维持4毫秒左右 要等到5毫秒之后再执行play
if(!this._exitfullscreen){ // 通过退出时间 跟 触发 退出时间 差
if(this.exitTimeStamp - this.pauseTimestamp <= 100){
if(this.timer) clearTimeout(this.timer);
this.timer = setTimeout(()=>{
video.play();
this._exitfullscreen = true;
}, 500);
// }
}
}
});
video.addEventListener('pause', function(e) {
this.pauseTimestamp = new Date().getTime();
console.log('触发了 暂停', this.pauseTimestamp);
});
存在的问题:
在视频全屏没有点击暂停的情况下,退出全屏会出现视频暂停的现象。
如何使其视频在无点击暂停退出全屏的情况下继续播放?
在上面尝试的基础上添加: