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标签用法和属性的介绍
以上就是html5 audio标签怎么用?html5 自动播放实现代码实例的详细内容,转载自php中文网
发表评论 取消回复