video画中画

最近项目中使用到了画中画功能,以前一直没有做过,刚好这次梳理一下相关的方法和判断;

1. 检查浏览器是否支持画中画功能:
if ('pictureInPictureEnabled' in document) {
  // 支持画中画功能
} else {
  // 不支持画中画功能
}
2. 检查当前视频元素是否支持画中画功能:
const videoElement = document.querySelector('video');
if (videoElement && typeof videoElement.requestPictureInPicture === 'function') {
  // 当前视频元素支持画中画功能
} else {
  // 当前视频元素不支持画中画功能
}
3.判断当前元素是否是画中画元素
var video = document.getElementById('video'); 
if (document.pictureInPictureElement === video) { 
    console.log('视频处于画中画模式'); 
    document.exitPictureInPicture(); // 取消画中画
} else { 
    console.log('视频不处于画中画模式'); 
}
4.监听画中画开启关闭
var video = document.getElementById('video');
video.addEventListener('enterpictureinpicture', function(event) {
    console.log('进入画中画模式');
});
video.addEventListener('leavepictureinpicture', function(event) {
    console.log('离开画中画模式');
});
使用举例:当点击后触发视频画中画:
const videoElement = document.querySelector('video');
const buttonElement = document.querySelector('button');

buttonElement.addEventListener('click', () => {
  if (videoElement && typeof videoElement.requestPictureInPicture === 'function') {
    // 开启画中画: videoElement.requestPictureInPicture();
    // 取消画中画: document.exitPictureInPicture();
  }
});
  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值