html5 audio标签怎么用?html5 自动播放实现代码实例
html5 audio标签怎么用?html5 audio标签自动播放和使用教程,下面开始我们的文章介绍,主要介绍了html5 audio标签的使用,还有关于html5 audio标签自动播放和暂停的教程详解
html5 audio标签用法的定义:
<audio> 标签定义声音,比如音乐或其他音频流。
html5 audio标签实例
一段简单的 HTML 5 音频:
<audio src="someaudio.wav"> 您的浏览器不支持 audio 标签。 </audio>登录后复制
html5 audio标签的属性:
来个html5 audio标签的使用实例教程
html5 audio标签自动播放和暂停
这有一个移动端的微信的H5活动页面,其中有个需求是:打开页面后背景音乐就要自动开始播放,点击音乐图标按钮可以控制其播放与暂停。
移动端,音乐播放,自动播放与暂停,audio标签是必须的,于是直接就开写:
<code class="language-html"><i class="icon-music-outer"> <i class="forbid icon-music"></i> <audio loop autoplay="autoplay" controls id="bgMusic" src="./music/musicMin.mp3"> </audio> </i> <script> var $music = $('.icon-music-outer'); var $forbid = $music.find('.forbid'); var audio = document.getElementById('bgMusic'); $music.on('click', function () { if ($forbid.hasClass('icon-music')) { $forbid.removeClass('icon-music').addClass('icon-forbidMusic'); } else { $forbid.removeClass('icon-forbidMusic').addClass('icon-music'); } if (audio.paused) { audio.play(); return } audio.pause(); }); </script> </code>登录后复制
在chorme浏览器上模拟,点击小喇叭,可以同步操控audio标签进行播放与暂停,也能自动播放。
于是放到手机上实测一番,结果。。。。。
安卓手机上一切正常;
但是在苹果手机上,刚进入页面的时候是不能自动播放的
后来查了许多资料后才知道,这是因为苹果为了防止用户是在流量环境下,这样会导致流量的偷跑,所以禁止了audio的自动播放,除非用户主动触发。当然,还是有办法达到需求的,毕竟是在人家微信浏览器下跑起来的,人在屋檐下,不得不低头啊!
再一个引入微信的开发者js文件,整体写法如下:jq和原生写法
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="./css/icon.css" type="text/css"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> <style> .icon-music-outer{ display: inline-block; width: 25px; height: 25px; position: fixed; right: 5px; top: 10px; font-size: 25px; color: #ffda51; z-index: 100; } .forbid{ display: inline-block; font-size: 25px; width: 25px; height: 25px; } .icon-forbidMusic{ display: inline-block; font-size: 25px; width: 25px; height: 25px; color: #d0f2fc; z-index: 101; } audio{ position: absolute; left: -300px; } </style> </head> <body> <i class="icon-music-outer"> <i class="forbid icon-music"></i> <!--控制音乐图标--> <audio loop autoplay="autoplay" controls id="bgMusic" src="./music/musicMin.mp3"> </audio> </i> <script src="./js/jquery-3.1.0.min.js" type="text/javascript"></script> <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> <script> var $music = $('.icon-music-outer'); var $forbid = $music.find('.forbid'); var audio = document.getElementById('bgMusic'); function audioAutoPlay(audio) { document.addEventListener("WeixinJSBridgeReady", function () { audio.play(); }, false); document.addEventListener('YixinJSBridgeReady', function () { audio.play(); }, false); } audioAutoPlay(audio); $music.on('click', function () { if ($forbid.hasClass('icon-music')) { $forbid.removeClass('icon-music').addClass('icon-forbidMusic'); } else { $forbid.removeClass('icon-forbidMusic').addClass('icon-music'); } if (audio.paused) { audio.play(); return } audio.pause(); }); </script> </body> </html>登录后复制
HTML 4.01 与 HTML 5 之间的差异
<audio> 标签是 HTML 5 的新标签。
提示和注释
提示:可以在开始标签和结束标签之间放置文本内容,这样老的浏览器就可以显示出不支持该标签的信息。
【相关推荐】
html pre标签的作用是什么?html pre标签用法及其属性详解
HTML li标签是干嘛的?HTML li标签用法和属性的介绍