HTML5使用JavaScript控制<audio>音频的播放

本文详细介绍了如何使用HTML5的<audio>标签来播放音频文件,包括基本的播放控制、预加载策略、自动播放及循环播放等功能,并探讨了通过JavaScript进行更高级的播放控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,下面是一个播放音乐的最简单样例

(controls属性告诉浏览器要有基本播放控件)
原文:HTML5 - 使用<audio>播放音频


<audio src="hangge.mp3" controls></audio>

2,预加载媒体文件

设置preload不同的属性值,可以告诉浏览器应该怎样加载一个媒体文件:
(1)值为auto:让浏览器自动下载整个文件
(2)值为none:让浏览器不必预先下载文件
(3)值为metadata:让浏览器先获取音频文件开头的数据块,从而足以确定一些基本信息(比如音频的总时长)

<!-- 用户点击播放才开始下载 -->
<audio src="hangge.mp3" controls preload="none"></audio>

3,自动播放

使用autoplay属性可以让浏览器加载完音频文件后立即播放。(如果想用来作为背景音乐的话可以把controls属性去掉)

<audio src="hangge.mp3" controls autoplay></audio>

4,循环播放

使用loop属性让音乐播放结束时,在从头开始播放。

<audio src="hangge.mp3" controls loop></audio>

 

 

有时我们需要使用js来控制播放器实现音乐的播放,暂停。或者使用js播放一些音效。

1,通过JavaScript控制页面上的播放器

比如把页面上添加一个<audio>用来播放背景音乐(由于controls属性未设置,我们是看不见播放界面的)

<audio id="bgMusic">
    <source = src="hangge.mp3" type="audio/mp3">
    <source = src="hangge.ogg" type="audio/ogg">
</audio>

通过pause()和play()方法可以使音乐暂停和继续播放(结合currentTime属性可以实现停止和重新播放)

var audio = document.getElementById("bgMusic");
 
//播放(继续播放)
audio.play();
 
//暂停
audio.pause();
 
//停止
audio.pause();
audio.currentTime = 0;
 
//重新播放
audio.currentTime = 0;
audio.play();

2,也可以动态的创建<audio>元素

//方式1
var audio = document.createElement("audio");
audio.src = "hangge.mp3";
audio.play();
 
//方式2
var audio = new Audio("hangge.mp3");
audio.play();

通过canPlayType()方法可以判断浏览器支持的编码方式,从而设置对应的音频文件。

if (audio.canPlayType("audio/mp3")) {
    audio.src = "hangge.mp3";
}else if(audio.canPlayType("audio/ogg")) {
    audio.src = "hangge.ogg";
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值