[HTML]audio音频标签的属性和事件

/ 3评论 / 372阅读 / 0点赞

<audio>是HTML5新加入的用于播放音频的标签,HTML5已经得到广泛的支持,所以我们可以放心使用这个标签;利用它,可以轻松地在网页上播放音频,制作音乐播放器等。下面我们来聊聊它的属性和事件

概念

元数据


属性

兼容性提示

<audio>
  能看到这段话,说明您的浏览器不支持 audio 标签捏
</audio>

controls默认音乐控制面板

<audio controls>
  能看到这段话,说明您的浏览器不支持 audio 标签捏
</audio>
<audio controls="controls">
  能看到这段话,说明您的浏览器不支持 audio 标签捏
</audio>

src音频文件链接

<audio src="./song.mp3" controls>
  能看到这段话,说明您的浏览器不支持 audio 标签捏
</audio>

source资源文件标签


<audio controls>
    <source src="./song.ogg" type="audio/ogg">
    <source src="./song.mp3" type="audio/mpeg">
    能看到这段话,说明您的浏览器不支持 audio 标签捏
</audio>

autoplay自动播放

<audio autoplay>
  您的浏览器不支持 audio 标签捏
</audio>
<audio autoplay="autoplay">
  您的浏览器不支持 audio 标签捏
</audio>

loop开启循环

<audio loop src="./song.mp3">
  您的浏览器不支持 audio 标签捏
</audio>

muted静音

<audio muted src="./song.mp3">
  您的浏览器不支持 audio 标签捏
</audio>

preload预加载方式

<audio preload="auto" src="./song.mp3">
  您的浏览器不支持 audio 标签捏
</audio>

JS操作属性

只读

这部分属性只能读取,不能进行赋值修改

duration音频总时长

const audioDOM = document.getElementById("audio");
if (isNaN(audioDOM.duration)) {
    // 未加载时的操作
} else {
    // 已加载时的操作
}

paused是否暂停

const audioDOM = document.getElementById("audio");
if (audioDOM.paused == true) {  //如果是暂停状态
    audioDOM.play();  //播放音频
} else {              //如果正在播放
    audioDOM.pause(); //暂停
}

ended是否播放完毕

currentSrc音频链接

buffered已缓存范围

let audio = document.getElementById("audio");
let timeRanges = audio.buffered;
let num = 0;
/*获取已加载时长,然后除以歌曲时长,即可得到已加载比例*/
if(timeRanges.length > 0)
    num = parseInt(timeRanges.end(timeRanges.length - 1) * 100 / audio.duration);
if (num > 100)
    num = 100;
else if (num < 0)
    num = 0;

seekable可跳转范围

networkState网络范围

error发生错误

seeking是否移动或跳转播放进度

<audio id="audio" controls src="song.mp3" onseeking="seeking">
  您的浏览器不支持 audio 标签捏
</audio>

<script>
seeking:function(){
    const audioDOM = document.getElementById("audio");
    console.log(audioDOM.seeking);
}
</script>

可读写

这部分属性可以读取,也可以赋值修改

currentTime已播放时长

const audioDOM = document.getElementById("audio");
if (audioDOM.currentTime > 5) {
    audioDOM.currentTime -= 5;
} else {
    audioDOM.currentTime = 0;
}

volume音量

const audioDOM = document.getElementById("audio");
if (audioDOM.volume < 0.9) {
    audioDOM.volume += 0.1;
} else {
    audioDOM.volume = 1;
}

playbackRate播放速度

const audioDOM = document.getElementById("audio");
if (audioDOM.playbackRate >= 2)
    audioDOM.playbackRate = 0.5;
else
    audioDOM.playbackRate += 0.25;

标签属性控制

以下属性都会返回布尔值boolean,可读写设置对应的标签属性是否启用

const audioDOM = document.getElementById("audio");
audioDOM.controls = true;
if(audioDOM.loop == false){
    audioDOM.loop = true;
}

JS操作函数

play()播放

const audioDOM = document.getElementById("audio");
if (audioDOM.canPlay == true) {   //如果资源准备好可以播放
    if (audioDOM.paused == true)  //音频为暂停状态
        audioDOM.play();    //播放
    else
        audioDOM.pause();   //暂停
}

pause()暂停

load()加载


事件

加载生命周期

loadstart开始加载

durationchange时长改变

loadedmetadata元数据加载完毕

loadeddata数据开始加载

progress加载中

canplay可以播放

canplaythrough可以播放整个音频

其他事件

timeupdate已播放时长更新

waiting等待资源中

playing播放中

play播放

pause暂停

ended结束

volumechange音量改变

ratechange播放速率改变

error发生错误

  1. המקום שלנו נפתח, מתוך אהבה לניקיון.
    טיפול נפשי צריך להתקיים בתוך מרחב
    רגוע ושליו, מתוך תפיסה שרק כך המטופל יוכל להרגיש את עצמו בסביבה מוגנת, שלווה
    ושומרת. מנעולן במעלה אדומים יוכל לעזור
    לכם במקרים שבהם המפתח נשבר, בין אם מחוץ לדלת ובין אם המפתח נשבר בתוך המנעול.

    מנעולן בירושלים זה סהר המנעולן. פורץ מנעולים בירושלים
    שירות זמין ואמין של מנעולן בעל ותק רב בתחום המנעולנות.
    שירות מצברים עד הבית פועל 24 שעות ביממה
    בכל אזור המרכז. אם אתם רוצים לפנק את בן
    או בת הזוג או רוצים לפנק את עצמכם בעיסוי עד
    הבית. לאחר שיחה בינכם לבין המטפל, יתחיל המטפל את העיסוי תוך שהוא עובר עם ידיו ולוחץ על השרירים תוך
    כדי עיסוי פנימה אל הרקמה. אתר THJ הוקם על מנת לאפשר לאנשים להיחשף אל מידע
    מהימן בתחום התכשיטנות והיהלומים
    ולבצע קניות און ליין של תכשיטים משובצי יהלומים ואבנים טובות.
    חברת מיסטר לקס מייבאת ומייצרת מגוון רחב של תכשיטים מיוחדים לגבר.
    חברת שיא המצבר ר מספקת את שירות מצבר עד הבית בזמן המהיר ביותר, תוך 60 דקות מרגע ההזמנה.
    עמוד הבית / עיסוי אירוטי בקריית אתא.

  2. מסאג’ אירוטי בבת ים בזמן שנוח לך,
    באמצע השבוע, בסוף השבוע, מתי שאתה פנוי,
    אפילו כשיש לך שעה פנויה ולא
    יותר. מסאג’ משחרר, עיסוי משחרר, מסאג’ פרטי.
    מחפשים עיסוי מסאז ברחובות?
    מעולם לא היה פשוט כל כך להזמין עיסוי ברחובות עד
    הבית. תוכלו להזמין מתוך מגוון של עיסויים את העיסוי שלו אתם זקוקים כמו: עיסוי מרגיע ונעים, עיסוי משחרר, עיסוי בשמן חם, עיסוי טנטרי, עיסוי מקצועי ומפנק בלוד .
    באזור יער בן שמן תוכלו להנות ממגוון פעילויות: טיולי סוסים, יקבי בוטיק, פעילות לחנוכה ולכל
    השנה. עמותת תיירות חבל מודיעין מציעה מגוון אטרקציות
    לילדים ולכל המשפחה. האתר מכיל לוח טרמפים
    מקיף של נסיעות משותפות לכל הארץ, לאוניברסיטאות, לאירועים,
    לעבודה ולכל מקום. מגוון ביולוגי הוא
    כלל השונות הביולוגית (מינים, גנים ומערכות אקולוגיות) על פני כדור הארץ, ומהווה את “מערכת ההפעלה” של הפלנטה.
    יש לנו מערכת ניהול תוכן שהופכת את עניין בניית האתר -להרבה יותר פשוט!
    יש לא מעט מעסים שמתמחים בעיסוי לנשים בלבד.

    שאלו את האישה שלכם אם היא רוצה לשלב בעיסוי אלמנטים של BDSM וב-90% מהמקרים אתם תיתקלו בסירוב.
    כדאי מאוד שלא להיצמד למונחים של יוקרה/טרנדים,
    אלא פשוט לבחור בעיסוי מפנק
    ברמת הגולן המתאים לכם ביותר בהתאם לצורך הגופני והרגשי שלכם.

  3. A motivating discussion is definitely worth comment. Theres no doubt that that you should write more on this issue, it may not be a taboo subject but usually folks dont talk about these subjects. To the next! Kind regards!!

发表回复

您的电子邮箱地址不会被公开。