H5页面音视频自动播放
现在大部分的H5页面都有实现播放背景音乐,播放视频功能。那怎么实现自动播放呢?
纯H5页面在手机端中是无法实现自动播放,移动端浏览器大部分是禁用video和audio的autoplay功能
并且,很多移动浏览器也不支持首次js调用play方法进行播放(只有用户手动点播放后暂停,然后用代码进行play可以)。
这样做主要是为了防止不必要的自动播放浪费流量。
以下代码是实现用户第一次触摸后实现的播放和微信app下自动播放
1 function autoPlayMusic() {
2 /* 自动播放音乐效果,解决浏览器或者APP自动播放问题 */ 3 function musicInBrowserHandler() { 4 musicPlay(true); 5 document.body.removeEventListener('touchstart', musicInBrowserHandler); 6 } 7 document.body.addEventListener('touchstart', musicInBrowserHandler); 8 /* 自动播放音乐效果,解决微信自动播放问题 */ 9 function musicInWeixinHandler() { 10 musicPlay(true); 11 document.addEventListener("WeixinJSBridgeReady", function () { 12 musicPlay(true); 13 }, false); 14 document.removeEventListener('DOMContentLoaded', musicInWeixinHandler); 15 } 16 document.addEventListener('DOMContentLoaded', musicInWeixinHandler); 17 } 18 function musicPlay(isPlay) { 19 var media = document.getElementById('myMusic'); 20 if (isPlay && media.paused) { 21 media.play(); 22 } 23 if (!isPlay && !media.paused) { 24 media.pause(); 25 } 26 }
以上仅供参考,望大神们帮忙修订更好更全的办法