HTML Academy · บทเรียน

องค์ประกอบ audio: src controls loop autoplay

ฝังเครื่องเล่นเสียงด้วยแอตทริบิวต์ HTML5 แบบเนทีฟ

บทเรียน 1 จาก 413 ขั้นตอน

องค์ประกอบ audio: src controls loop autoplay เป็นบทเรียน HTML Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน HTML Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

เสียง audio แบบเนทีฟใน HTML5

HTML5 เปิดตัวองค์ประกอบ <audio> สำหรับฝัง audio โดยไม่ต้องใช้ปลั๊กอิน:

<audio src="podcast.mp3" controls>
  Your browser does not support audio.
</audio>
<!-- controls: show the default player UI (play, pause, volume) -->
<!-- Fallback text is shown to browsers that don't support audio -->

แอตทริบิวต์ controls

แอตทริบิวต์ controls แสดงเครื่องเล่น audio ในตัวของเบราว์เซอร์:

<!-- Without controls: audio plays but no UI is visible -->
<audio src="bg-music.mp3"></audio>

<!-- With controls: browser shows play/pause, volume, scrubber -->
<audio src="podcast.mp3" controls></audio>

<!-- Always include controls for user-accessible audio
     Unless it is a background ambient sound (use controls anyway for accessibility) -->

แอตทริบิวต์ loop

แอตทริบิวต์ loop จะเริ่มเล่น audio ใหม่เมื่อเล่นจบ:

<audio src="bg-music.ogg" controls loop></audio>
<!-- loop is a boolean attribute -->
<!-- Good for: background music, demo soundscapes -->
<!-- Bad UX: loops without user consent are annoying -->

แอตทริบิวต์ autoplay

แอตทริบิวต์ autoplay จะเริ่มเล่นเมื่อโหลดหน้าเว็บ:

<audio src="alert.mp3" autoplay></audio>
<!-- Most modern browsers BLOCK autoplay for audio by default -->
<!-- Exception: autoplay + muted is allowed -->
<!-- Browsers allow autoplay if the user has interacted with the page -->

<!-- The muted workaround: -->
<audio src="bg.mp3" autoplay muted loop></audio>

แอตทริบิวต์ muted

แอตทริบิวต์ muted จะเริ่มเล่น audio โดยปิดเสียงไว้:

<!-- Muted audio can autoplay in most browsers: -->
<audio src="ambient.mp3" autoplay muted loop></audio>

<!-- User can unmute with the controls -->
<audio src="ambient.mp3" autoplay muted loop controls></audio>

แอตทริบิวต์ preload

แอตทริบิวต์ preload ใช้บอกเป็นนัยว่าควรโหลดข้อมูลมากน้อยเพียงใด:

<audio src="podcast.mp3" controls preload="none">...</audio>
<!-- none: don't preload anything (saves bandwidth on mobile) -->

<audio src="short-clip.mp3" controls preload="auto">...</audio>
<!-- auto: preload the entire file (browser decides) -->

<audio src="song.mp3" controls preload="metadata">...</audio>
<!-- metadata: preload only duration and basic info (good default) -->

ควบคุม audio ด้วย JavaScript

ควบคุม audio ด้วย JavaScript:

const audio = document.getElementById('my-audio');

// Play:
audio.play();

// Pause:
audio.pause();

// Current time (seconds):
audio.currentTime = 30;  // jump to 30 seconds

// Volume (0 to 1):
audio.volume = 0.5;

// Duration:
console.log(audio.duration);

เหตุการณ์ของ audio

เหตุการณ์ของ audio ที่พบบ่อย:

audio.addEventListener('play', () => console.log('Playing'));
audio.addEventListener('pause', () => console.log('Paused'));
audio.addEventListener('ended', () => console.log('Finished'));
audio.addEventListener('timeupdate', () => {
  console.log('Position:', audio.currentTime);
});
audio.addEventListener('error', () => console.log('Error loading audio'));

เครื่องเล่น audio แบบกำหนดเอง

สร้างเครื่องเล่นแบบกำหนดเองด้วย JavaScript และ CSS:

<div class="audio-player">
  <audio id="player" src="podcast.mp3" preload="metadata"></audio>
  <button id="play-btn" aria-label="Play">▶</button>
  <input type="range" id="scrubber" value="0" min="0" max="100">
  <span id="time">0:00</span>
</div>
<script>
const audio = document.getElementById('player');
document.getElementById('play-btn').addEventListener('click', () => {
  audio.paused ? audio.play() : audio.pause();
});
</script>

audio ที่เข้าถึงได้

ข้อกำหนดด้านการเข้าถึงได้สำหรับ audio:

  • จัดเตรียมบทถอดเสียงสำหรับเนื้อหา audio ทั้งหมด
  • สำหรับพอดแคสต์ ให้ลิงก์ไปยังบทถอดเสียงแบบข้อความ
  • audio ที่เล่นอัตโนมัติจะไม่เป็นไปตาม WCAG 1.4.2 หากเล่นนานเกิน 3 วินาที
  • ตรวจสอบให้แน่ใจว่าสามารถเข้าถึงตัวควบคุมด้วยแป้นพิมพ์ได้ (ตัวควบคุมในตัวสามารถทำได้)

องค์ประกอบ src เทียบกับ source

ระบุรูปแบบทางเลือกด้วย <source> (บทเรียนถัดไป):

<!-- Single format: -->
<audio controls src="podcast.mp3">...</audio>

<!-- Multiple formats: -->
<audio controls>
  <source src="podcast.opus" type="audio/ogg; codecs=opus">
  <source src="podcast.mp3" type="audio/mpeg">
  Your browser does not support audio.
</audio>

ตรวจสอบอย่างรวดเร็ว

แอตทริบิวต์ของ audio ใดแสดงส่วนติดต่อเครื่องเล่นในตัวของเบราว์เซอร์

สรุปทบทวน: องค์ประกอบ audio

สาระสำคัญขององค์ประกอบ audio:

  • controls — แสดงส่วนติดต่อเครื่องเล่น (ควรใส่ไว้เกือบทุกครั้ง)
  • loop — เริ่มเล่นใหม่เมื่อเล่นจบ
  • autoplay — เล่นเมื่อโหลดหน้า (เบราว์เซอร์ส่วนใหญ่จะบล็อกไว้)
  • muted — เริ่มเล่นโดยปิดเสียง (ทำให้ autoplay ใช้งานได้ในเบราว์เซอร์ส่วนใหญ่)
  • preload="metadata" — ค่าเริ่มต้นที่เหมาะสมสำหรับพอดแคสต์/เพลง
  • จัดเตรียมบทถอดเสียงเพื่อการเข้าถึงได้
เริ่มต้นได้ฟรี

เรียนรู้ HTML ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
40
บทเรียน
159

คำถามที่พบบ่อย

บทเรียน “องค์ประกอบ audio: src controls loop autoplay” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “องค์ประกอบ audio: src controls loop autoplay” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส HTML Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “องค์ประกอบ audio: src controls loop autoplay”

ฝังเครื่องเล่นเสียงด้วยแอตทริบิวต์ HTML5 แบบเนทีฟ คุณปฏิบัติ HTML Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน HTML Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน HTML Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “องค์ประกอบ audio: src controls loop autoplay” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน HTML Academy นี้ได้ไหม

ได้ บทเรียน HTML Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. องค์ประกอบ audio: src controls loop autoplay
  2. องค์ประกอบ video และอัตราส่วนภาพ
  3. องค์ประกอบ source สำหรับหลายรูปแบบ
  4. คำบรรยายด้วย track และ WebVTT
← กลับไปที่ HTML Academy