GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • MDN
  • HTML: Markup language
  • Elements
  • Global attributes
  • Attributes
  • See all…
  • Responsive images
  • HTML cheatsheet
  • Date & time formats
  • See all…
  • SVG
  • MathML
  • XML
  • CSS: Styling language

This view

  • Original page
  • New address

GeezerVison is showing developer.mozilla.org — HTMLAudioElement - Web APIs | MDN

HTMLAudioElement

Baseline
Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

  • See full compatibility
  • Learn more

The HTMLAudioElement interface provides access to the properties of <audio> elements, as well as methods to manipulate them.

This element is based on, and inherits properties and methods from, the HTMLMediaElement interface.

Constructor

Audio()

Creates and returns a new HTMLAudioElement object, optionally starting the process of loading an audio file into it if the file URL is given.

Instance properties

No specific properties; inherits properties from its parent, HTMLMediaElement, and from HTMLElement.

Instance methods

Inherits methods from its parent, HTMLMediaElement, and from HTMLElement. It offers no methods of its own.

Events

Inherits methods from its parent, HTMLMediaElement, and from its ancestor HTMLElement. Listen to events using addEventListener() or by assigning an event listener to the oneventname property of this interface.

Examples

Basic usage

You can create a HTMLAudioElement entirely with JavaScript using the Audio() constructor:

js
const audioElement = new Audio("car_horn.wav");

then you can invoke the play() method on the element

js
audioElement.play();

Note: A common gotcha is trying to play an audio element immediately on page load. Modern browser's default autoplay policy will block that from happening. Refer to Firefox and chrome for best practices and workarounds.

Some of the more commonly used properties of the audio element include src, currentTime, duration, paused, muted, and volume. This snippet copies the audio file's duration to a variable:

js
const audioElement = new Audio("car_horn.wav");
audioElement.addEventListener("loadeddata", () => {
  let duration = audioElement.duration;
  // The duration variable now holds the duration (in seconds) of the audio clip
});

Specifications

Specification
HTML
# htmlaudioelement

Browser compatibility

See also

  • Web media technologies
  • Audio and Video Delivery
  • HTML element implementing this interface: <audio>.

Help improve MDN

Learn how to contribute

This page was last modified on Nov 10, 2026 by MDN contributors.

View this page on GitHub • Report a problem with this content
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.