HTML5中使用js控制audio標籤的方法

<audio>標籤可以在HTML5瀏覽器中播放音頻文件。
<audio>默認提供一個控制面板,但是有些時候我們只需要播放聲音,控制面板由我們自己來定義其顯示的狀態。

這裏我們可以使用JS來進行控制,代碼如下:

var audio ;
window.onload = function(){
initAudio();
}
var initAudio = function(){
//audio = document.createElement("audio")
//audio.src='Never Say Good Bye.ogg'
audio = document.getElementById('audio');
}
function getCurrentTime(id){
alert(parseInt(audio.currentTime) + ':秒');
}

function playOrPaused(id,obj){
if(audio.paused){
audio.play();
obj.innerHTML='暫停';
return;
}
audio.pause();
obj.innerHTML='播放';
}

function hideOrShowControls(id,obj){
if(audio.controls){
audio.removeAttribute('controls');
obj.innerHTML = '顯示控制框'
return;
}
audio.controls = 'controls';
obj.innerHTML = '隱藏控制框'
return;
}
function vol(id,type , obj){
if(type == 'up'){
var volume = audio.volume + 0.1;
if(volume >=1 ){
volume = 1 ;

}
audio.volume = volume;
}else if(type == 'down'){
var volume = audio.volume - 0.1;
if(volume <=0 ){
volume = 0 ;
}
audio.volume = volume;
}
document.getElementById('nowVol').innerHTML = returnFloat1(audio.volume);
}
function muted(id,obj){
if(audio.muted){
audio.muted = false;
obj.innerHTML = '開啓靜音';
}else{
audio.muted = true;
obj.innerHTML = '關閉靜音';
}
}
//保留一位小數點

function returnFloat1(value) {
value = Math.round(parseFloat(value) * 10) / 10;
if (value.toString().indexOf(".") < 0){
value = value.toString() + ".0";
}
return value;
}
調用方式如下:

<a href="javascript:void(0);" οnclick="getCurrentTime('firefox');">獲取播放時間</a>
<a href="javascript:void(0);" οnclick="playOrPaused('firefox',this);">播放</a>
<a href="javascript:void(0);" οnclick="hideOrShowControls('firefox',this);">隱藏控制框</a>
<a href="javascript:void(0);" οnclick="muted('firefox',this);">開啓靜音</a>
<input type="button" value="+" id="upVol" οnclick="vol('firefox' , 'up' , this )"/>音量<input type="button" value="-" οnclick="vol('firefox' , 'down' ,this )"/>
<audio src="/images/audio/Never Say Good Bye.ogg" id="audio" controls="controls" ></audio>

當前音量:<span id = "nowVol"> - </span>
本文永久地址:http://blog.it985.com/19331.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章