3C制定了關于在HTML5中全屏的API但是只能由用戶事件觸發,所以不能自動全屏;用戶事件觸發方法如下:
必須用戶事件觸發(可以是鼠標事件,鍵盤事件等)
全屏樣式CSS
各種瀏覽器都提供了一個非常有用的全屏模式時的css樣式規則:
另外某些瀏覽器可以通過meta直接設置全屏
開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個開源的 HTML5 視頻播放器插件——MuiPlayer。
MuiPlayer 是一個開源的HTML5視頻播放插件,其默認配置了精美可操作的的播放控件,涉及了常用的播放場景,例如全屏播放、播放快進、循環播放、音量調節等功能。支持 mp4、m3u8、flv 等多種媒體格式播放,解決大部分兼容問題,同時適應在PC、手機端播放。
使用 npm 安裝:
npm i mui-player --save
使用 yarn 安裝:
yarn add mui-player
1 使用 script 標簽引入:
<!-- 引入基礎樣式文件 mui-player.min.css -->
<link rel="stylesheet" type="text/css" href="css/mui-player.min.css"/>
<!-- 引入基礎腳本 mui-player.min.js -->
<script type="text/javascript" src="js/mui-player.min.js"></script>
<!-- 指定播放器容器 -->
<div id="mui-player"></div>
或者使用模塊管理器引入:
import 'mui-player/dist/mui-player.min.css'
import MuiPlayer from 'mui-player'
2 定義播放器容器
<div id="mui-player"></div>
3 初始化構建播放器
// 初始化 MuiPlayer 插件,MuiPlayer 方法傳遞一個對象,該對象包括所有插件的配置
var mp=new MuiPlayer({
container:'#mui-player',
title:'標題',
src:'./static/media/media.mp4',
})
以上就能為初始化構建一個具有默認配置控件的視頻播放器。
更多API基礎配置: https://muiplayer.js.org/zh/guide/api.html#%E4%B8%BB%E8%A6%81%E9%85%8D%E7%BD%AE
更多內容大家可自行前往閱讀。
開源地址:https://gitee.com/muiplayer/hello-muiplayer
多媒體標簽:
音頻標簽audio:
<audio src="音頻文件的URL"></audio><!-- audio標簽需要controls控件才可以播放音頻,controls的屬性值可以省略,如果URL為視頻格式文件,則只會播放音頻 -->
html5中通過audio標簽實現音頻播放,支持的格式有.mp3/.ogg/.wav;注意:標簽中必須要有controls屬性,否則不會播放;loop循環播放,autoplay自動播放屬性(谷歌為了用戶體驗禁用了這個功能);一般為了兼容多個瀏覽器,audio標簽中不寫src屬性,而是通過source標簽寫入多個格式的音頻供瀏覽器選擇,若都不支持則輸入提示文字:
<body>
<audio controls loop autoplay>
<source src="music/bgsound.mp3" type="audio/mpeg">
<source src="music/movie04.ogg" type="audio/mpeg">
若瀏覽器都不支持以上格式,在這里輸入提示文字即可
</audio>
</body>
視頻標簽video:
<video src="視頻文件的URL" controls="controls"></video><!-- video標簽需要controls控件才可以播放視頻,controls的屬性值可以省略 -->
視頻一般比較大,如果是一般的視頻上傳,我們可以借助第三方視頻平臺,如騰訊、優酷等,把視頻上傳到第三方平臺后分享,通過ifram標簽插入到代碼中即可。
embed可以用來插入各種多媒體,例如Midi、Wav、AIFF、AU、MP3等格式,它支持音頻或視頻播放
<embed src="" allowFullScreen="true" quality="high" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>
html5中定義視頻通過video標簽,其屬性:autoplay自動播放(谷歌為了用戶體驗禁用了這個功能,解決方法是給video標簽加靜音屬性muted)、muted靜音、controls默認播放控件、loop循環播放、poster加載等待的圖片、preload是否預先加載,其屬性值auto和none、width設置播放窗口的寬度、height設置播放窗口的高度,支持的格式有ogg/MPEG4/WebM等,一般video標簽中不寫src屬性,而是通過source標簽寫入多個格式的視頻供瀏覽器選擇,若都不支持則輸入提示文字:
<body>
<video controls loop autoplay poster="images/bg.jpg">
<source src="video/movie04.ogg" type="video/ogg">
<source src="video/mp4.mp4" type="video/mp4">
若瀏覽器都不支持以上格式,在這里輸入提示文字即可
</video>
</body>
全屏方法:
HTML5允許用戶自定義網頁上任意一元素全屏顯示,element.requsetFullScreen()開啟全屏顯示;
同樣支持關閉全屏操作:document.cancelFullScreen(),注意:任何元素的全屏操作后都只需要給document關閉全屏即可。
document.fullScreen檢測當前是否處于全屏狀態。
以上方法不支持ie9以下低版本瀏覽器,以及高級瀏覽器加私有前綴才可以使用(webkit內核瀏覽器:webkitRequestFullScreen、webkitCancelFullScreen,如chrome瀏覽器。Gecko內核瀏覽器:mozRequestFullScreen、mozCancelFullScreen,如火狐瀏覽器;document.webkitIsFullScreen、document.mozFullScreen)
<script>
var btn=document.querySelector('input');
var flag=true;
if (flag) {
btn.onclick=function() {
bodys.webkitRequestFullScreen();
!flag;
};
} else {
btn.onclick=function() {
document.webkitCancelFullScreen();
!flag;
};
};
</script>
自定義播放器:
播放器中常用方法:
播放器中常用屬性:
繼:
播放器中常用事件:
解決html5標簽兼容性:
由于html5新增的許多語義化標簽在低版本瀏覽器不兼容,這里推薦一款js插件來解決這個問題:html5shiv.js,其相關教程查閱官網:https://www.npmjs.com/package/html5shiv
提示:本文圖片等素材來源于網絡,若有侵權,請發郵件至郵箱:810665436@qq.com聯系筆者 刪除。
筆者:苦海123
其它問題可通過以下方式聯系本人咨詢:
QQ:810665436
微信:ConstancyMan
*請認真填寫需求信息,我們會在24小時內與您取得聯系。