<video src="https://hy.v.netease.com/2018/1030/5c9caed3eea6c6e079673d031fca3350qt.mp4" controls="controls" x5-playsinline="" playsinline="true" webkit-playsinline="true" x-webkit-airplay="true" x5-video-player-type="h5" x5-video-player-fullscreen="" x5-video-orientation="portraint"></video>
各個屬性的參考如下:
controls="controls"
x5-playsinline=""
playsinline="true"
webkit-playsinline="true"
x-webkit-airplay="true"
x5-video-player-type="h5"
x5-video-player-fullscreen=""
x5-video-orientation="portraint"
————————————————
<video
id="videoID"
src="video.mp4"
poster="loadbg.jpg" 視頻封面
preload="auto"
x-webkit-airplay="allow"
x5-video-player-type="h5" 啟用H5播放器,是wechat安卓版特性
x5-video-player-fullscreen="true" 全屏設(shè)置,設(shè)置為 true 是防止橫屏
x5-video-orientation="portraint" 播放器支付的方向,landscape橫屏,portraint豎屏,默認值為豎屏
webkit-playsinline="true" 這個屬性是ios 10中設(shè)置可以讓視頻在小窗內(nèi)播放,也就是不是全屏播放
playsinline="true" IOS微信瀏覽器支持小窗內(nèi)播放
style="object-fit:fill">
</video>
video屬性解釋:
preload="auto" :屬性規(guī)定在頁面加載后載入視頻。如果設(shè)置了 autoplay 屬性,則忽略該屬性。
一般參數(shù)可能的值:
· auto - 當頁面加載后載入整個視頻
· meta - 當頁面加載后只載入元數(shù)據(jù)
· none - 當頁面加載后不載入視頻
muted:當設(shè)置該屬性后,它規(guī)定視頻的音頻輸出應該被靜音
JQ操作的用法:
$('#videoID')[0].muted = true;
$('#videoID')[0].muted = false;
controls="controls" :屬性規(guī)定瀏覽器應該為視頻提供播放控件。
autoplay="autoplay": 視頻自動播放設(shè)置,但是有經(jīng)驗的人都應該知道,autoplay標簽在手機上不兼容,APP中設(shè)置問題導致無法自動播放,無論安卓或IOS。需要模擬自動播放只能通過一些事件觸發(fā)。
webkit-playsinline="true":視頻播放時局域播放,不脫離文檔流 。但是這個屬性比較特別, 需要嵌入網(wǎng)頁的APP比如WeChat中UIwebview 的allowsInlineMediaPlayback = YES webview.allowsInlineMediaPlayback = YES,才能生效。換句話說,如果APP不設(shè)置,你頁面中加了這標簽也無效,這也就是為什么安卓手機WeChat 播放視頻總是全屏,因為APP不支持playsinline,而ISO的WeChat卻支持。
這里就要補充下,如果是想做全屏直播或者全屏H5體驗的用戶,ISO需要設(shè)置刪除 webkit-playsinline 標簽,因為你設(shè)置 false 是不支持的 ,安卓則不需要,因為默認全屏。但這時候全屏是有播放控件的,無論你有沒有設(shè)置control。 做直播的可能用得著播放控件,但是全屏H5是不需要的,那么去除全屏播放時候的控件,需要以下設(shè)置:同層播放。
x5-video-player-type="h5":啟用同層H5播放器,就是在視頻全屏的時候,div可以呈現(xiàn)在視頻層上,也是WeChat安卓版特有的屬性。同層播放別名也叫做沉浸式播放,播放的時候看似全屏,但是已經(jīng)除去了control和微信的導航欄,只留下"X"和"<"兩鍵。目前的同層播放器只在Android(包括微信)上生效,暫時不支持iOS。筆者想過為什么同層播放只對安卓開放,因為安卓不能像ISO一樣局域播放,默認的全屏會使得一些界面操作被阻攔,如果是全屏H5還好,但是做直播的話,諸如彈幕那樣的功能就無法實現(xiàn)了,所以這時候同層播放的概念就解決了這個問題。不過筆者在測試的過程中發(fā)現(xiàn),不同版本的ISO和安卓效果略有不同。
x5-video-orientation:聲明播放器支持的方向,可選值landscape 橫屏,portraint豎屏。默認值portraint。無論是直播還是全屏H5一般都是豎屏播放,但是這個屬性需要x5-video-player-type開啟H5模式
x5-video-player-fullscreen="true":全屏設(shè)置。ture和false的設(shè)置會導致布局上的不一樣