Video 全屏播放、禁止拖动进度条、禁止下载

全屏播放

ios:默认全屏播放模式,不做处理;
安卓:默认小屏播放模式,特殊处理,以下是实现代码;

/**
* @description 安卓全屏播放模式
* @video DOM节点 
*/
function fullscreen(video){
  if (video.requestFullscreen) {
      video.requestFullscreen()
    } else if (video.msRequestFullscreen) {
      video.msRequestFullscreen()
    } else if (video.mozRequestFullScreen) {
      video.mozRequestFullScreen()
    } else if (video.webkitRequestFullscreen) {
      video.webkitRequestFullscreen()
    } else {
      console.log('Fullscreen API is not supported')
    }
}

屏蔽全屏模式

安卓:默认小屏播放模式,不做处理;
ios:默认全屏播放模式,特殊处理,以下是实现代码;

添加"webkit-playsinline"、“playsinlin” 这两个属性即可

<video
  ref="video"
  :src="videoSrc"
  :poster="bgImg"
  webkit-playsinline
  playsinlin
  controls="controls"
  preload="meta"
  x-webkit-airplay="allow"
  x5-video-player-type="h5"
  x5-video-player-fullscreen="true"
  x5-video-orientation="landscape|portrait"
  currentTime="0">
  your browser does not support the video tag
</video>

禁止拖动进度条

方法1:每隔500毫秒记录一次视频播放的时间节点,如果是当前播放时间与上一次记录的播放时间大于1秒,说明有拖动非正常播放速度,这时候设置播放时间为上一次记录的播放时间。这个方法有缺陷就是如果我们长时间按住进度条然后拖动仍然可以拖动,需要改进方法。
方法2: 模拟一个视频播放的控制栏controls,最佳。
方法3:用一个蒙层遮住,不太实用,全屏播放立马就失效了
以下是方法1的代码实现:

// 禁止拖动进度条
const timer = setInterval(function() {
   const currentTime = video.currentTime
   // console.log(currentTime, originTime)
  if (currentTime - originTime > 1) {
     video.currentTime = originTime
  }
  originTime = currentTime
}, 500)

禁止下载

添加属性controlslist=“nodownload”

<video
  ref="video"
  :src="videoSrc"
   :poster="bgImg"
   controls="controls"
   controlslist="nodownload"
   preload
   autoplay>
   your browser does not support the video tag
</video>

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: h5 video不显示进度条一般是因为视频播放器的控制条被隐藏了,可以在播放器的属性中设置控制条的显示与隐藏。至于不能快进的问题,可能是因为视频的编码格式或者播放器的设置问题导致的。如果是编码格式的问题,可以尝试转换视频格式或者使用优秀的编码软件重新编码视频;如果是播放器的设置问题,可以查看播放器相关的API文档和使用说明,进行相应的设置调整,以解决快进功能无法使用的问题。此外,还可以考虑使用第三方开源的视频播放器插件,例如video.js、jwplayer等,这些插件不仅可以解决视频播放器问题,还可以提供更多的功能和美化效果,提升用户体验。总之,h5 video不显示进度条不能快进,需要仔细分析问题原因,并采取相应的解决措施。 ### 回答2: H5 video 是基于 HTML5 技术开发的视频播放器,由于其良好的兼容性和支持性,已经成为当前主流的网页视频播放方式。然而,有时候我们可能会遇到 H5 video 不显示进度条、不能快进的问题,这主要有以下原因: 1.视频格式问题:H5 video 对一些视频格式的支持性可能存在限制,如果所播放的视频格式不支持,则会导致视频进度条无法显示,无法进行快进等操作。 2.音视频文件不完整或损坏:如果所播放的音视频文件不完整或损坏,可能会导致视频进度条无法显示,无法进行快进等操作。 3.缓存问题:有时候我们可能会在播放过程中遇到视频进度条无法显示、无法快进的情况,这可能是由于缓存未完全加载导致的。可以尝试清除浏览器缓存或重新加载页面解决。 针对以上问题,我们可以采取以下解决措施: 1.检查视频格式:确认所要播放的视频格式是否被 H5 video 支持,如果不支持,可以考虑使用其他格式或转换工具将视频转成支持格式。 2.检查音视频文件完整性:确认所要播放的音视频文件是否完整,并且未损坏。如果文件不完整或损坏,可以重新下载或使用修复工具修复文件。 3.清除浏览器缓存:在遇到视频进度条无法显示、无法快进等问题时,可以尝试清除浏览器缓存,重新加载视频页面。 除此之外,为了提高 H5 video 在播放过程中的体验,我们也可以采用以下建议: 1.视频预加载:在加载页面时预先加载视频文件,以保证视频缓存完全。 2.网络优化:优化网络连接,提高视频下载速度,避免视频卡顿或加载缓慢的情况。 3.增加交互体验:可以添加交互组件,如暂停、快进、倒退、全屏等功能,以提高用户体验。 ### 回答3: 近年来,随着移动互联网的迅速发展,H5视频作为一种使用方便、便于传播的视频播放方式逐渐受到更多人的喜爱。然而,在使用H5视频时,有时会遇到一些问题,比如无法显示进度条,不能快进等问题。这些问题可能会给用户带来不便和困扰。 首先,对于H5视频无法显示进度条的问题,我们可以尝试检查以下几个方面。首先,我们需要确定视频的格式是否与浏览器兼容。如果视频格式不被浏览器支持,那么就会出现无法显示进度条的情况。要解决这个问题,我们需要在编码视频的时候,选择浏览器支持的格式进行编码,或者通过引入第三方库进行视频格式兼容的处理。 其次,我们还需要检查是否需要设置视频的属性。有些H5视频播放器需要对视频属性进行设置,以便正确地显示进度条。需要设置的属性包括视频的宽度、高度、播放时长、总时长等。正确地设置这些属性可以确保视频播放时进度条的显示正常。 最后,对于H5视频不能快进的问题,我们需要检查视频源文件是否正常。如果视频源文件损坏或者遗失某些数据,那么就会影响到视频的正常播放和快进。此时,我们需要重新获取或修复视频源文件,以便确保视频播放正常。 除了上述几点,还有一些其它的问题可能会导致H5视频无法显示进度条或不能快进。比如网络状况不佳,服务器响应慢等等。针对这些问题,我们需要进一步深入定位问题,并采取相应的修复措施。 总之,H5视频作为一种现代化的视频播放方式,不仅使用方便,而且便于传播,可以满足人们在移动设备上观看视频的需求。但是在使用过程中会遇到一些问题,我们需要积极解决这些问题,以便更好地使用H5视频。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值