
正文
【Egret】里使用audio标签达到默认播放背景音乐
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
方法一
<audio id="bgmMusic" style="position:absolute;" src="resource/assets/Sound/load.mp3?v=<?=$ver?>" autoplay='autoplay' loop="loop">你的浏览器不支持audio标签。</audio> function setBgm(play){ var bgm = document.getElementById('bgmMusic'); if(play){ bgm.play(); }else{ bgm.pause(); }}setBgm(true);
这段代码,写在egret项目里的index.html文件里,audio标签这句代码,写在body标签下;下面的函数写在script标签里;可以直接在这边操作函数
也可以在egret里通过 window["setBgm"](true) 方法来控制,


方法二
在微信里,有的版本,上面的方法失效了,可以尝试一下下面的方法
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> <script> //一般情况下,这样就可以自动播放了,但是一些奇葩iPhone机不可以 document.getElementById('media').play(); //必须在微信Weixin JSAPI的WeixinJSBridgeReady才能生效 document.addEventListener("WeixinJSBridgeReady", function () { document.getElementById('media').play() }, false); </script>
用此方法可以参考 http://www.css88.com/archives/6002
HTML 5 Audio属性
- autoplay:唯一可选值为autoplay,出现autoplay属性并准确赋值时,音频将会自动播放
- controls:唯一可选值为controls,出现controls属性并准确赋值时,音频播放控件将会显示,控件包括:播放、暂停、定位、音量、全屏切换、字幕(如果可用)、音轨(如果可用)。
- loop:唯一可选值为loop,出现loop属性并准确赋值时,音频将会循环播放。
- preload:可选值有auto(当页面加载后载入整个音频)、meta(当页面加载后只载入元数据)和none(当页面加载后不载入音频) 如果设置了前面的autoplay属性,那么preload将会被忽略。
- src:指定音频URL地址,可以是相对的URL也可以是绝对的URL 当然还可以像第2和第3个例子一样,用source标签来指定源。
HTML5的Audio标签使用详解,参考:http://www.5icool.org/a/201306/a1907.html




