定义H5播放器,在微信以及一些Android和iOS浏览中播放,存在容易被自带浏览器接管的情况。接管后播放时,播放器的一些功能设置就不再显示,比如水印信息等。
如果设置安卓和iOS手机在微信里打开不全屏的话,就可以正常显示自定义播放器的参数,比如水印。
除了H5播放器可以设置是否全屏外,要想实现播放器自定义的一些效果更好展示,还可以进行如下配置:
1、android下提示,让用户使用chrome 70以上内核的浏览器(安卓自带的)去播放,不允许他们在微信这些播放;
2、IOS下,也是chrome下可以; IOS下还可以支持微信播放,如果不允许全屏的话,也可以有水印。
3、电脑版下没问题,基本主流浏览器都可以实现H5播放器自定义参数显示。
多媒体标签:
音频标签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
creenfull.js --浏览器全屏插件
screenfull.js是用于跨浏览器使用JavaScript Fullscreen API的简单包装器, 可让您将页面或任何元素全屏显示, 并且平滑浏览器实现差异,
github地址:https://github.com/sindresorhus/screenfull.js 。
压缩版下载地址: https://www.bootcdn.cn/screenfull.js/
项目中需要将后台浏览器的窗口全屏, 也就是我们点击一个按钮要实现按F11全屏的效果。
在HTML5中,W3C制定了关于全屏的API, 就可以实现全屏幕的效果, 也可以让页面中的图片,
视频等全屏目前只有google chrome 15 +, safri5.1+,firfox10+,IE11支持
var docElm=document.documentElement;
//W3C
if (docElm.requestFullscreen) {
docElm.requestFullscreen();
}
//FireFox
else if (docElm.mozRequestFullScreen) {
docElm.mozRequestFullScreen();
}
//Chrome等
else if (docElm.webkitRequestFullScreen) {
docElm.webkitRequestFullScreen();
}
//IE11
else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
}
if (document.exitFullscreen) {
document.exitFullscreen();
}
else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
}
else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
}
else if (document.msExitFullscreen) {
document.msExitFullscreen();
}
document.addEventListener("fullscreenchange", function () {
fullscreenState.innerHTML=(document.fullscreen)? "" : "not ";}, false);
document.addEventListener("mozfullscreenchange", function () {
fullscreenState.innerHTML=(document.mozFullScreen)? "" : "not ";}, false);
document.addEventListener("webkitfullscreenchange", function () {
fullscreenState.innerHTML=(document.webkitIsFullScreen)? "" : "not ";}, false);
document.addEventListener("msfullscreenchange", function () {
fullscreenState.innerHTML=(document.msFullscreenElement)? "" : "not ";}, false);
实例:
http://robnyman.github.io/fullscreen/
html代码:
<p>
<button id="view-fullscreen">Fullscreen</button>
<button id="cancel-fullscreen">Cancel fullscreen</button>
</p>
js代码
*请认真填写需求信息,我们会在24小时内与您取得联系。