HTML5 audio標籤使用js進行播放控制例項
<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;
}
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);" onclick="getCurrentTime('firefox');">獲取播放時間</a>
<a href="javascript:void(0);" onclick="playOrPaused('firefox',this);">播放</a>
<a href="javascript:void(0);" onclick="hideOrShowControls('firefox',this);">隱藏控制框</a>
<a href="javascript:void(0);" onclick="muted('firefox',this);">開啟靜音</a>
<input type="button" value="+" id="upVol" onclick="vol('firefox' , 'up' , this )"/>音量<input type="button" value="-" onclick="vol('firefox' , 'down' ,this )"/>
<audio src="/images/audio/Never Say Good Bye.ogg" id="audio" controls="controls" ></audio>
當前音量:<span id = "nowVol"> - </span>
<a href="javascript:void(0);" onclick="playOrPaused('firefox',this);">播放</a>
<a href="javascript:void(0);" onclick="hideOrShowControls('firefox',this);">隱藏控制框</a>
<a href="javascript:void(0);" onclick="muted('firefox',this);">開啟靜音</a>
<input type="button" value="+" id="upVol" onclick="vol('firefox' , 'up' , this )"/>音量<input type="button" value="-" onclick="vol('firefox' , 'down' ,this )"/>
<audio src="/images/audio/Never Say Good Bye.ogg" id="audio" controls="controls" ></audio>
當前音量:<span id = "nowVol"> - </span>
相關文章
- JSTL的標籤及使用,包含例項JS
- video影片標籤播放時js/jQuery顯示播放控制元件會導致播放暫停解決辦法IDEJSjQuery控制元件
- 基本的 HTML 標籤 - 四個例項HTML
- video視訊標籤播放時js/jQuery顯示播放控制元件會導致播放暫停解決辦法IDEJSjQuery控制元件
- HTML5的新特性——語義化標籤、多媒體標籤(video、audio)、input型別、表單屬性HTMLIDE型別
- HTML5 標籤列表HTML
- HTML5常用標籤HTML
- HTML5 新增標籤HTML
- vuejs實現新增tag標籤程式碼例項VueJS
- 標籤評分:海量標籤如何進行系統治理?
- HTML 使用表單標籤實現註冊頁面的例項程式碼HTML
- HTML5新標籤相容——>HTML
- html5基本常用標籤HTML
- HTML5 標籤歸納HTML
- js--標籤語法的使用JS
- 刪除字串中的html標籤程式碼例項字串HTML
- 如何為機器學習進行資料標籤、版本控制和管理機器學習
- html5文字標籤HTML
- HTML5 之語義標籤HTML
- Spring原始碼分析(六)SpringAOP例項及標籤的解析Spring原始碼
- Web Audio API 第2章 完美的播放時機控制WebAPI
- html5 audio整理HTML
- HTML基本標籤的使用與注意事項HTML
- HTML5中Audio使用踩坑彙總HTML
- JS 移除 HTML 標籤JSHTML
- JS 之 script標籤JS
- HTML5 拖拽程式碼例項HTML
- JS指定音訊audio在某個時間點進行播放,獲取當前音訊audio的長度,音訊時長格式轉化JS音訊
- HTML5常見標籤詳解HTML
- ios系統上h5頁面播放audio標籤聲音有延遲問題處理iOSH5
- 如何在vue的style標籤中使用js?VueJS
- 使用原生js實現選項卡功能例項教程JS
- HTML標籤(基本標籤的使用)HTML
- 唯一標識 Java 執行的例項Java
- JS控制音訊順序播放JS音訊
- html標籤-HTML5精講 課時ID:6.1 【表嚴肅】#HTML教程 #HTML5教程 #html標籤HTML
- body標籤-HTML5精講 課時ID:6.2 【表嚴肅】#HTML教程 #HTML5教程 #body標籤HTML
- 易優CMS模板標籤videoplay影片播放IDE
- Html5 aside標籤的用法和作用HTMLIDE