❶ 如何使用javaScript控制Audio对象
HTML5 中的audio对象提供可用于通过JavaScript控制播放的方法、属性以及事件。
在JavaScript中播放和暂停音频播放
使用HTML5
audio元素可向网页中添加音频,而无需使用外部控件或程序。但是,除非你的网页只需要一个简单的音频播放器,否则你很可能想对加载的音频文件及其播放
拥有更多的控制。若要将audio元素与 JavaScript 结合使用,请定义audio标记,该标记具有 "ID"
并且可以选择省略其他所有内容。你可以显示或隐藏内置控件,或将音频设置为在页面加载时自动播放。使用
JavaScript,你仍然可以执行该操作并且还可以执行进一步操作。
在以下示例中,我们在 HTML 中使用简单的 audio 标记语法。
<input type="text" id="audiofile" size="80" value="demo.mp3" />
音频播放器的所有其他功能可通过JavaScript进行控制,如以下脚本所示。
var currentFile = "";
function playAudio() {
// Check for audio element support.
if (window.HTMLAudioElement) {
try {
var oAudio = document.getElementById('myaudio');
var btn = document.getElementById('play');
var audioURL = document.getElementById('audiofile');
//Skip loading if current file hasn't changed.
if (audioURL.value !== currentFile) {
oAudio.src = audioURL.value;
currentFile = audioURL.value;
}
// Tests the paused attribute and set state.
if (oAudio.paused) {
oAudio.play();
btn.textContent = "Pause";
}
else {
oAudio.pause();
btn.textContent = "Play";
}
}
catch (e) {
// Fail silently but show in F12 developer tools console
if(window.console && console.error("Error:" + e));
}
}
}
在示例的 HTML 部分,为audio元素指定id="myaudio" 和源文件"demo.mp3"。定义 id="play" 的按钮和触发 "playAudio()" JavaScript 函数的onclick事件。
在 JavaScript 部分中,使用
document.getElementById返回audio 对象。play和pause方法用于提供播放控制。检索button
对象以便可以在“播放”和“暂停”之间切换按钮标签,具体情况取决于audio 对象的paused属性的状态。 每次调用 "playAudio"
函数时都会检查该状态。 如果音频文件正在播放,则paused属性返回false,并且调用pause方法来暂停播放。按钮标签也设置为“播放”。
如果文件已暂停,则paused属性返回true,并且调用play方法,按钮标签更新为“暂停”。第一次加载文件时,即使尚未显式调用 pause方法,paused属性也返回 true(播放已暂停)。
在HTML代码中,默认情况下按钮处于禁用状态。当页面加载时,在主体标记中使用 onload 事件调用checkSupport() 函数。如果 audio元素存在,则启用按钮。
❷ html js audio,一首歌播完自动下一首歌,要怎么做
HTML5中的audio对象有个属性为 ended,改属性是返回音频是否播放结束,是boolean类型的。
例如我自己写的一个判断:
this.audioPlay=function(soundPath,callback){
$("#shapeAudio").attr("src",soundPath);
var shapeAudio=document.getElementById("shapeAudio");
shapeAudio.play();
/*判断声音是否播放完成,播放完成之后执行回调函数*/
if(callback != undefined){
var is_playFinish = setInterval(function(){
if(shapeAudio.ended){
callback();
window.clearInterval(is_playFinish);
}
}, 10);
}
}
改判断为当声音播放完成之后再执行回调函数callback
❸ 怎样为JavaScript做的程序添加音效
<div id="div_play1" style='display: none'></div>
<div id="div_play2" style='display: none'></div>
<script language="JavaScript" type="text/javascript">
function play()
{
var url = "youhaveamessage.mp3";
var div = document.getElementById('div_play1');
div.innerHTML = '<embed src="'+url+'" loop="1" autostart="true" hidden="true"></embed>';
var emb = document.getElementsByTagName('EMBED')[0];
if (emb) {
/* 这里可以写成一个判断 wav 文件是否已加载完毕,以下采用setTimeout模拟一下 */
div = document.getElementById('div_play2');
div.innerHTML = 'loading: '+emb.src;
setTimeout(function(){div.innerHTML='';},1000);
}
}
play();
</script>
❹ 怎样用JavaScript代码来控制audio的上一曲、下一曲、播放/暂停以及时间进度条
js audio对象可以实现
❺ html5 jquery audio player插件怎么用
用法:
添加音频元素、 设置的属性,你需要和添加源。您将添加更多不同的来源,更多的用户将能够听听您的音频 (因为没有一个音频格式跨所有浏览器支持)。三个例子:
<audio src="audio.wav" preload="auto" controls></audio>
这只是将预加载audio.wav文件并不会发挥它直到用户单击播放按钮。nonemetadata) 的其他preload值将不预加载该文件。
autoplay时它会加载该文件,然后再loop它以这种方式:
指定多个音频格式来解决前面提到的问题:
<audio preload="auto" controls>
<source src="audio.wav" />
<source src="audio.mp3" />
<source src="audio.ogg" />
</audio>
神秘controls吗?它是一个布尔属性不会影响任何方式中的插件,但可确保该浏览器的默认播放器是显示和禁用 JavaScript 时显示控件与控件。
最后一步 ― 调用插件
<audio src="audio.wav" preload="auto" controls></audio>
<script src="jquery.js"></script>
<script src="audioplayer.js"></script>
<script>
$( function()
{
$( 'audio' ).audioPlayer();
});
</script>
该插件,一些可选的参数。最重要的一个被称为classPrefix。传递的值成为子元素的父元素和类名称前缀的类名称。其他选项只可能有利英语以外的语言。具有默认值的示例:
$( 'audio' ).audioPlayer(
{
classPrefix: 'audioplayer',
strPlay: 'Play',
strPause: 'Pause',
strVolume: 'Volume'
});
有一些类的名称,被分配到父元素时:
音乐播放器版本― ― 正在播放音频
<div class="audioplayer audioplayer-playing">
停止停止音乐播放器版本― ― 音频
<div class="audioplayer audioplayer-stopped">
音乐播放器版本静音― ― 卷处于静音状态
<div class="audioplayer audioplayer-muted">
音乐播放器版本 novolume ― ― 没有音量调节是可用的:
<div class="audioplayer audioplayer-novolume">
重要提示:时不支持音频元素或没有任何给定的音频文件是与浏览器兼容,玩家切换到迷你模式,基本上减少了播放机播放/暂停按钮 (因为"嵌入"元素是有限的操作):
<div class="audioplayer audioplayer-stopped audioplayer-mini">
<embed src="audio.wav" width="0" height="0" volume="100" autostart="false" loop="false" />
<div class="audioplayer-playpause" title="Play"><a href="#">Play</a></div>
</div>
❻ 点击一个按钮播放音乐,应用于 HTML,可以用JS插件
functiona(){
varaudio=document.getElementById('music');
if(audio.paused){
audio.play();//audio.play();//播放
}
else{
audio();
}
}
<!--上面是加入专js部分的属-->
<audiosrc="click.mp3"controls="controls"preloadid="music"hidden></audio>
<buttonid="a"onclick="a();">播放/暂停</button>
❼ 如何用js控制audio元素连续播放mp3文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
<audio id="myaudio"></audio>
</body>
<script>
// window.onload = function() {
//页面加载完成之后,通过给audio添加autoplay属性,音频下载完成之后自动播放
// var oAudio = document.getElementById('myaudio');
// oAudio.src = 'Le_Papillon.mp3';
// }
//mp3文件名
var mp3List = [
'Girlfriend.mp3',
'Have A Nice Day.mp3',
'Le Papillon.mp3',
'She Is.mp3',
'Tik Tok.mp3'
],
//文件路径
baseUrl = '../music/';
function getMusic(list) {
var len = list.length,
num = parseInt(<a href="https://www..com/s?wd=Math.random&tn=44039180_cpr&fenlei=-w9Uz4Bmy-bIi4WUvYETgN-" target="_blank" class="-highlight">Math.random</a>()*len, 10),
music = baseUrl + list[num];
if(music) {
return music;
} else {
getMusic(list, baseUrl);
}
}
canPlay(playAudio);
//查看是否支持audio标签,如果支持,预加载当前指向mp3文件
function canPlay(callback) {
var currentFile = getMusic(mp3List);
try {
var audio = new Audio();
audio.oncanplay = function() {
callback(currentFile);
}
audio.src = currentFile;
audio.load();
}catch(e){
callback(false, e);
}
}
//play
function playAudio(currentFile) {
// Check for audio element support.
if (window.HTMLAudioElement && currentFile) {
try {
var oAudio = document.getElementById('myaudio');
oAudio.src = currentFile;
if (oAudio.paused) {
oAudio.play();
}
else {
oAudio.pause();
}
oAudio.onended = function() {
oAudio.src = getMusic(mp3List);
oAudio.play();
}
}
catch (e) {
// Fail silently but show in F12 developer tools console
if(window.console && console.error("Error:" + e));
}
}
}
</script>
</html>
❽ 如何用js控制audio元素连续播放mp3文件
1、首先我们先来看一下音频元素最基本的应用以及样式,如下图所示,运用audio元素即可内,controls是用来控制容是否显示控制条。
❾ 屏幕左下方出现javascript:audio('lead-in.wma)但是没有声音
课件是什么格式的呢?既然用到了JS,可能是
1、浏览器对Javascript的支持问题,
2、课件本身的问题,你写的javascript:audio('lead-in.wma)从JS语法上来讲是错的,少一个引号,如果其他的效果都正常,就是没有声音,很可能是可见本身的代码问题。
❿ 动态添加audio代码,引入的audio.min.js和样式无效,怎么解决
<!doctype html>
<%@ page contentType="text/html;charset=UTF-8"%>
<html>
<head>
<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<link href="index.css" rel="stylesheet">
</head>
<body>
<table border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><button value="onclick" onclick="audio()">onclick</button>
</td>
</tr>
<tr>
<td><div id="f"></div></td>
</tr>
</table>
<script src="audio.min.js"></script>
<script>
audiojs.events.ready(function() {
audiojs.createAll();
});
</script>
<script type="text/javascript">
function audio() {
var a = '<audio id="d" src = "123.mp3" controls>';
$("#f").html(a);
}
</script></body>
</html>
这样写,js一般放到后面加载