HTML Academy · Lektion

audio-elementet src controls loop autoplay

Bädda in ljudspelare med inbyggda HTML5-attribut

Lektion 1 av 413 steg

audio-elementet src controls loop autoplay är en gratis lektion i HTML Academy på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för HTML Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i HTML Academy innehåller totalt 4 lektioner.

Inbyggt ljud i HTML5

HTML5 introducerade elementet <audio> för att bädda in ljud utan plugin-program:

<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 -->

Attributet controls

Attributet controls visar webbläsarens inbyggda ljudspelare:

<!-- 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) -->

Attributet loop

Attributet loop startar om ljudet när det tar slut:

<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 -->

Attributet autoplay

Attributet autoplay börjar spela upp ljudet när sidan läses in:

<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>

Attributet muted

Attributet muted startar ljudet avstängt:

<!-- 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>

Attributet preload

Attributet preload ger en fingervisning om hur mycket data som ska läsas in:

<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) -->

Styr ljud med JavaScript

Styr ljud med 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);

Ljudevenemang

Vanliga ljudevenemang:

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'));

Anpassad ljudspelare

Bygg en anpassad spelare med JavaScript och 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>

Tillgängligt ljud

Tillgänglighetskrav för ljud:

  • Tillhandahåll en transkription för allt ljudinnehåll
  • För poddar: länka till en texttranskription
  • Ljud som spelas upp automatiskt bryter mot WCAG 1.4.2 om det pågår längre än 3 sekunder
  • Se till att kontrollerna kan användas med tangentbordet (det kan inbyggda kontroller)

Elementet src jämfört med source

Ange alternativa format med <source> (nästa lektion):

<!-- 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>

Snabbkontroll

Vilket ljudattribut visar webbläsarens inbyggda spelargränssnitt?

Sammanfattning: elementet audio

Det viktigaste om audio-elementet:

  • controls — visa spelargränssnittet (ta nästan alltid med detta)
  • loop — starta om när uppspelningen är klar
  • autoplay — spela upp vid inläsning (blockeras av de flesta webbläsare)
  • muted — starta avstängt (gör autoplay möjligt i de flesta webbläsare)
  • preload="metadata" — bra standard för poddar och musik
  • Tillhandahåll transkriptioner för tillgänglighet
Gratis att börja

Lär dig HTML med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
40
Lektioner
159

Vanliga frågor

Är lektionen ”audio-elementet src controls loop autoplay” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen HTML Academy, inklusive ”audio-elementet src controls loop autoplay”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i HTML Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”audio-elementet src controls loop autoplay”?

Bädda in ljudspelare med inbyggda HTML5-attribut Ni övar på HTML Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig HTML Academy?

Du behöver inga förkunskaper. Utbildningen i HTML Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”audio-elementet src controls loop autoplay”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här HTML Academy-lektionen?

Ja. Varje HTML Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. audio-elementet src controls loop autoplay
  2. video-elementet och bildförhållande
  3. source-elementet för flera format
  4. Undertexter med track och WebVTT
← Tillbaka till HTML Academy