【转】h5页面audio不自动播放问题
1、audio:html5音频标签
<audio loop src="/photo/aa.mp3" id="audio" autoplay preload="auto">该浏览器不支持audio属性</audio>
不支持audio元素的浏览器会显示标签内文字
src:音频地址
autoplay:音频加载完毕后自动播放。
controls:显示播放控制条。
loop:播放完毕后会重复播放。
preload:1)auto 预加载音频视频。2)metadata 只预加载音频视频元数据。 有autoplay时此属性无效。
(h5 推荐使用OGG Vobis格式)
2、js控制媒体
play()播放
pause()暂停
load()重新加载
需引入微信API接口,用JS控制代码如下:
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> <script type="text/javascript"> document.addEventListener("WeixinJSBridgeReady", function () { document.getElementById('mp3Btn').play(); // document.getElementById('video').play(); }, false); </script>
所以采用以下方式解决
//--创建页面监听,等待微信端页面加载完毕 触发音频播放
document.addEventListener('DOMContentLoaded', function () { function audioAutoPlay() { var audio = document.getElementById('audio'); audio.play(); document.addEventListener("WeixinJSBridgeReady", function () { audio.play(); }, false); } audioAutoPlay(); });
//--创建触摸监听,当浏览器打开页面时,触摸屏幕触发事件,进行音频播放 document.addEventListener('touchstart', function () { function audioAutoPlay() { var audio = document.getElementById('audio'); audio.play(); } audioAutoPlay(); });