微信瀏覽器及X5內(nèi)核同層視頻播放問題

最近要被微信瀏覽器搞炸了,在app內(nèi)的頁面使用視頻播放沒問題,放到微信內(nèi)視頻播放就會自動全屏,很難受,多方查證下,發(fā)現(xiàn)可以設(shè)置video屬性“x5-video-player-type”聲明啟用同層H5播放器

    <video
      loop
      playsinline="true"
      webkit-playsinline="true"
      x-webkit-airplay="allow"
      airplay="allow"
      autoplay
      x5-video-player-type="h5"
      x5-video-player-fullscreen="false"
      x5-video-orientation="portrait"
    ></video>

x5-video-player-fullscreen全屏方式
視頻播放時將會進入到全屏模式

如果不申明此屬性,頁面得到視口區(qū)域為原始視口大小(視頻未播放前),比如在微信里,會有一個常駐的標題欄,如果不聲明此屬性,這個標題欄高度不會給頁面,播放時會平均分為兩塊(上下黑塊)

注: 聲明此屬性,需要頁面自己重新適配新的視口大小變化。可以通過監(jiān)聽resize 事件來實現(xiàn)


<video id="test_video" src="xxx" x5-video-player-type="h5" x5-video-player-fullscreen="true"/>

需要監(jiān)聽窗口大小變化(resize)實現(xiàn)全屏


window.onresize = function(){

  test_video.style.width = window.innerWidth + "px";

  test_video.style.height = window.innerHeight + "px";

}

注: : 1. 為了讓視頻真正鋪滿全屏,可以適當讓video的顯示區(qū)域大于視口區(qū)域,這樣在顯示時在視口外的部截掉后,不會出四周黑邊的情況

x5-video-orientation 控制橫豎屏

功能:聲明播放器支持的方向

可選值: landscape 橫屏, portraint豎屏

默認值:portraint

e.g: http://res.imtt.qq.com/qqbrowser/js/test_video_orientation_attr.html

橫屏

<video ... x5-video-player-type=”h5” x5-video-orientation="landscape"/>

豎屏

<video ... x5-video-player-type="h5" x5-video-orientation="portrait"/>

跟隨手機自動旋轉(zhuǎn)

<video x5-video-player-type="h5" x5-video-orientation="landscape|portrait"/>

注: 此屬性只在聲明了x5-video-player-type=”h5”情況下生效

事件回調(diào)

x5videoenterfullscreen進入全屏通知

支持版本: TBS中從>=036900開始支持,QB中是>=7.2開始支持

x5videoenterfullscreen: 表示播放器進入全屏狀態(tài)

示例:

<video id=“myVideo".../>

通過JS監(jiān)聽事件

myVideo.addEventListener("x5videoenterfullscreen", function(){

  alert("player enterfullscreen");

})

x5videoexitfullscreen退出全屏通知

x5videoexitfullscreen: 表示播放器退出了全屏狀態(tài)

使用方法與x5videoenterfullscreen類似

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容