Class Audio


@Bean(typeName="audio") public class Audio extends HtmlElementMixed
DTO for an HTML <audio> element.

The audio element embeds sound content in documents. It can contain audio streams, audio files, or other audio sources. The browser will choose the most appropriate source based on format support and user preferences.

Examples:

// Simple audio with single source Audio audio1 = audio().src("audio.mp3").controls(true); // Audio with multiple sources for browser compatibility Audio audio2 = audio().controls(true) .children( source().src("audio.mp3").type("audio/mpeg"), source().src("audio.ogg").type("audio/ogg") ); // Autoplay audio with loop Audio audio3 = audio().src("background.mp3").autoplay(true).loop(true).muted(true);

The following convenience methods are provided for constructing instances of this bean:

See Also:
  • Constructor Details

  • Method Details

    • autoplay

      public Audio autoplay(Object value)
      autoplay attribute.

      Hint that the media resource can be started automatically when the page is loaded.

      This attribute uses deminimized values:

      • false - Attribute is not added
      • true - Attribute is added as "autoplay"
      • Other values - Passed through as-is
      Parameters:
      autoplay - The new value for this attribute. Typically a Boolean or String.
      Returns:
      This object.
    • controls

      public Audio controls(Object value)
      controls attribute.

      Show user agent controls.

      This attribute uses deminimized values:

      • false - Attribute is not added
      • true - Attribute is added as "controls"
      • Other values - Passed through as-is
      Parameters:
      controls - The new value for this attribute. Typically a Boolean or String.
      Returns:
      This object.
    • crossorigin

      public Audio crossorigin(String value)
      crossorigin attribute.

      Specifies how the element handles cross-origin requests for CORS (Cross-Origin Resource Sharing).

      Possible values:

      • "anonymous" - Cross-origin requests are made without credentials
      • "use-credentials" - Cross-origin requests include credentials
      Parameters:
      crossorigin - How to handle cross-origin requests.
      Returns:
      This object.
    • loop

      public Audio loop(Object value)
      loop attribute.

      Causes the media to automatically restart from the beginning when it reaches the end.

      Parameters:
      loop - If true, the media will loop continuously.
      Returns:
      This object.
    • mediagroup

      public Audio mediagroup(String value)
      mediagroup attribute.

      Groups multiple media elements together so they can be controlled as a single unit. All media elements with the same mediagroup value will share the same MediaController, allowing synchronized playback.

      This is useful for creating synchronized audio/video presentations or multiple audio tracks.

      Parameters:
      mediagroup - The name of the media group to join.
      Returns:
      This object.
    • muted

      public Audio muted(Object value)
      muted attribute.

      Mutes the audio output by default. Useful for autoplay videos where audio should be disabled initially.

      Parameters:
      muted - If true, the media will be muted by default.
      Returns:
      This object.
    • preload

      public Audio preload(Object value)
      preload attribute.

      Specifies how the browser should load the media resource.

      Possible values:

      • "none" - Do not preload the media
      • "metadata" - Preload only metadata (duration, dimensions, etc.)
      • "auto" - Preload the entire media file (default)
      Parameters:
      preload - How much of the media to preload.
      Returns:
      This object.
    • src

      public Audio src(Object value)
      src attribute.

      Address of the resource.

      The value can be of any of the following types: URI, URL, String. Strings must be valid URIs.

      URIs defined by UriResolver can be used for values.

      Parameters:
      src - The new value for this attribute. Typically a URL or String.
      Returns:
      This object.
    • _class

      public Audio _class(String value)
      Description copied from class: HtmlElement
      class attribute.

      Specifies one or more CSS class names for the element, separated by spaces. These classes can be used for styling and JavaScript selection.

      Overrides:
      _class in class HtmlElementMixed
      Returns:
      This object.
    • accesskey

      public Audio accesskey(String value)
      Description copied from class: HtmlElement
      accesskey attribute.

      Defines a keyboard shortcut to activate or focus an element. The value should be a single character that, when pressed with a modifier key (usually Alt), activates the element.

      Overrides:
      accesskey in class HtmlElementMixed
      Returns:
      This object.
    • contenteditable

      public Audio contenteditable(Object value)
      Description copied from class: HtmlElement
      contenteditable attribute.

      Indicates whether the element's content is editable by the user.

      Possible values:

      • "true" or empty string - Element content is editable
      • "false" - Element content is not editable
      • "plaintext-only" - Element content is editable, but rich text formatting is disabled
      Overrides:
      contenteditable in class HtmlElementMixed
      Returns:
      This object.
    • dir

      public Audio dir(String value)
      Description copied from class: HtmlElement
      dir attribute.

      Specifies the text direction of the element's content.

      Possible values:

      • "ltr" - Left-to-right text direction
      • "rtl" - Right-to-left text direction
      • "auto" - Browser determines direction based on content
      Overrides:
      dir in class HtmlElementMixed
      Returns:
      This object.
    • hidden

      public Audio hidden(Object value)
      Description copied from class: HtmlElement
      hidden attribute.

      This attribute uses deminimized values:

      • false - Attribute is not added
      • true - Attribute is added as "hidden"
      • Other values - Passed through as-is
      Overrides:
      hidden in class HtmlElementMixed
      Returns:
      This object.
    • id

      public Audio id(String value)
      Description copied from class: HtmlElement
      id attribute.

      Specifies a unique identifier for the element. The ID must be unique within the document and can be used for CSS styling, JavaScript selection, and anchor links.

      Overrides:
      id in class HtmlElementMixed
      Returns:
      This object.
    • lang

      public Audio lang(String value)
      Description copied from class: HtmlElement
      lang attribute.

      Specifies the primary language of the element's content using a language tag. This helps with accessibility, search engines, and browser features like spell checking.

      Overrides:
      lang in class HtmlElementMixed
      Returns:
      This object.
    • onabort

      public Audio onabort(String value)
      Description copied from class: HtmlElement
      onabort attribute.

      Event handler for when an operation is aborted (e.g., image loading is cancelled).

      Overrides:
      onabort in class HtmlElementMixed
      Returns:
      This object.
    • onblur

      public Audio onblur(String value)
      Description copied from class: HtmlElement
      onblur attribute.

      Event handler for when the element loses focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onblur("validate(\"email\")")
      • If using double quotes for attributes: onblur("validate('email')")
      Overrides:
      onblur in class HtmlElementMixed
      Returns:
      This object.
    • oncancel

      public Audio oncancel(String value)
      Description copied from class: HtmlElement
      oncancel attribute.

      Event handler for when a dialog is cancelled.

      Overrides:
      oncancel in class HtmlElementMixed
      Returns:
      This object.
    • oncanplay

      public Audio oncanplay(String value)
      Description copied from class: HtmlElement
      oncanplay attribute.

      Event handler for when the media can start playing (enough data has been buffered).

      Overrides:
      oncanplay in class HtmlElementMixed
      Returns:
      This object.
    • oncanplaythrough

      public Audio oncanplaythrough(String value)
      Description copied from class: HtmlElement
      oncanplaythrough attribute.

      Event handler for when the media can play through to the end without buffering.

      Overrides:
      oncanplaythrough in class HtmlElementMixed
      Returns:
      This object.
    • onchange

      public Audio onchange(String value)
      Description copied from class: HtmlElement
      onchange attribute.

      Event handler for when the value of a form element changes and loses focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onchange("validate(\"field\")")
      • If using double quotes for attributes: onchange("validate('field')")
      Overrides:
      onchange in class HtmlElementMixed
      Returns:
      This object.
    • onclick

      public Audio onclick(String value)
      Description copied from class: HtmlElement
      onclick attribute.

      Event handler for when the element is clicked.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onclick("alert(\"Hello\")")
      • If using double quotes for attributes: onclick("alert('Hello')")
      Overrides:
      onclick in class HtmlElementMixed
      Returns:
      This object.
    • oncuechange

      public Audio oncuechange(String value)
      Description copied from class: HtmlElement
      oncuechange attribute.

      Event handler for when a text track cue changes.

      Overrides:
      oncuechange in class HtmlElementMixed
      Returns:
      This object.
    • ondblclick

      public Audio ondblclick(String value)
      Description copied from class: HtmlElement
      ondblclick attribute.

      Event handler for when the element is double-clicked.

      Overrides:
      ondblclick in class HtmlElementMixed
      Returns:
      This object.
    • ondurationchange

      public Audio ondurationchange(String value)
      Description copied from class: HtmlElement
      ondurationchange attribute.

      Event handler for when the duration of the media changes.

      Overrides:
      ondurationchange in class HtmlElementMixed
      Returns:
      This object.
    • onemptied

      public Audio onemptied(String value)
      Description copied from class: HtmlElement
      onemptied attribute.

      Event handler for when the media element becomes empty (e.g., network error).

      Overrides:
      onemptied in class HtmlElementMixed
      Returns:
      This object.
    • onended

      public Audio onended(String value)
      Description copied from class: HtmlElement
      onended attribute.

      Event handler for when the media playback reaches the end.

      Overrides:
      onended in class HtmlElementMixed
      Returns:
      This object.
    • onerror

      public Audio onerror(String value)
      Description copied from class: HtmlElement
      onerror attribute.

      Event handler for when an error occurs (e.g., failed resource loading).

      Overrides:
      onerror in class HtmlElementMixed
      Returns:
      This object.
    • onfocus

      public Audio onfocus(String value)
      Description copied from class: HtmlElement
      onfocus attribute.

      Event handler for when the element receives focus.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onfocus("highlight(\"field\")")
      • If using double quotes for attributes: onfocus("highlight('field')")
      Overrides:
      onfocus in class HtmlElementMixed
      Returns:
      This object.
    • oninput

      public Audio oninput(String value)
      Description copied from class: HtmlElement
      oninput attribute.

      Event handler for when the value of an input element changes (fires on every keystroke).

      Overrides:
      oninput in class HtmlElementMixed
      Returns:
      This object.
    • oninvalid

      public Audio oninvalid(String value)
      Description copied from class: HtmlElement
      oninvalid attribute.

      Event handler for when form validation fails.

      Overrides:
      oninvalid in class HtmlElementMixed
      Returns:
      This object.
    • onkeydown

      public Audio onkeydown(String value)
      Description copied from class: HtmlElement
      onkeydown attribute.

      Event handler for when a key is pressed down.

      Overrides:
      onkeydown in class HtmlElementMixed
      Returns:
      This object.
    • onkeypress

      public Audio onkeypress(String value)
      Description copied from class: HtmlElement
      onkeypress attribute.

      Event handler for when a key is pressed (deprecated, use onkeydown instead).

      Overrides:
      onkeypress in class HtmlElementMixed
      Returns:
      This object.
    • onkeyup

      public Audio onkeyup(String value)
      Description copied from class: HtmlElement
      onkeyup attribute.

      Event handler for when a key is released.

      Overrides:
      onkeyup in class HtmlElementMixed
      Returns:
      This object.
    • onload

      public Audio onload(String value)
      Description copied from class: HtmlElement
      onload attribute.

      Event handler for when the element and its resources have finished loading.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onload("init(\"config\")")
      • If using double quotes for attributes: onload("init('config')")
      Overrides:
      onload in class HtmlElementMixed
      Returns:
      This object.
    • onloadeddata

      public Audio onloadeddata(String value)
      Description copied from class: HtmlElement
      onloadeddata attribute.

      Event handler for when the first frame of media has finished loading.

      Overrides:
      onloadeddata in class HtmlElementMixed
      Returns:
      This object.
    • onloadedmetadata

      public Audio onloadedmetadata(String value)
      Description copied from class: HtmlElement
      onloadedmetadata attribute.

      Event handler for when metadata (duration, dimensions, etc.) has been loaded.

      Overrides:
      onloadedmetadata in class HtmlElementMixed
      Returns:
      This object.
    • onloadstart

      public Audio onloadstart(String value)
      Description copied from class: HtmlElement
      onloadstart attribute.

      Event handler for when the browser starts loading the media.

      Overrides:
      onloadstart in class HtmlElementMixed
      Returns:
      This object.
    • onmousedown

      public Audio onmousedown(String value)
      Description copied from class: HtmlElement
      onmousedown attribute.

      Event handler for when a mouse button is pressed down on the element.

      Overrides:
      onmousedown in class HtmlElementMixed
      Returns:
      This object.
    • onmouseenter

      public Audio onmouseenter(String value)
      Description copied from class: HtmlElement
      onmouseenter attribute.

      Event handler for when the mouse pointer enters the element (does not bubble).

      Overrides:
      onmouseenter in class HtmlElementMixed
      Returns:
      This object.
    • onmouseleave

      public Audio onmouseleave(String value)
      Description copied from class: HtmlElement
      onmouseleave attribute.

      Event handler for when the mouse pointer leaves the element (does not bubble).

      Overrides:
      onmouseleave in class HtmlElementMixed
      Returns:
      This object.
    • onmousemove

      public Audio onmousemove(String value)
      Description copied from class: HtmlElement
      onmousemove attribute.

      Event handler for when the mouse pointer moves over the element.

      Overrides:
      onmousemove in class HtmlElementMixed
      Returns:
      This object.
    • onmouseout

      public Audio onmouseout(String value)
      Description copied from class: HtmlElement
      onmouseout attribute.

      Event handler for when the mouse pointer moves out of the element (bubbles).

      Overrides:
      onmouseout in class HtmlElementMixed
      Returns:
      This object.
    • onmouseover

      public Audio onmouseover(String value)
      Description copied from class: HtmlElement
      onmouseover attribute.

      Event handler for when the mouse pointer moves over the element (bubbles).

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onmouseover("showTooltip(\"info\")")
      • If using double quotes for attributes: onmouseover("showTooltip('info')")
      Overrides:
      onmouseover in class HtmlElementMixed
      Returns:
      This object.
    • onmouseup

      public Audio onmouseup(String value)
      Description copied from class: HtmlElement
      onmouseup attribute.

      Event handler for when a mouse button is released over the element.

      Overrides:
      onmouseup in class HtmlElementMixed
      Returns:
      This object.
    • onmousewheel

      public Audio onmousewheel(String value)
      Description copied from class: HtmlElement
      onmousewheel attribute.

      Event handler for when the mouse wheel is rotated over the element (deprecated, use onwheel).

      Overrides:
      onmousewheel in class HtmlElementMixed
      Returns:
      This object.
    • onpause

      public Audio onpause(String value)
      Description copied from class: HtmlElement
      onpause attribute.

      Event handler for when media playback is paused.

      Overrides:
      onpause in class HtmlElementMixed
      Returns:
      This object.
    • onplay

      public Audio onplay(String value)
      Description copied from class: HtmlElement
      onplay attribute.

      Event handler for when media playback starts.

      Overrides:
      onplay in class HtmlElementMixed
      Returns:
      This object.
    • onplaying

      public Audio onplaying(String value)
      Description copied from class: HtmlElement
      onplaying attribute.

      Event handler for when media playback starts after being paused or delayed.

      Overrides:
      onplaying in class HtmlElementMixed
      Returns:
      This object.
    • onprogress

      public Audio onprogress(String value)
      Description copied from class: HtmlElement
      onprogress attribute.

      Event handler for when the browser is downloading media data.

      Overrides:
      onprogress in class HtmlElementMixed
      Returns:
      This object.
    • onratechange

      public Audio onratechange(String value)
      Description copied from class: HtmlElement
      onratechange attribute.

      Event handler for when the playback rate of media changes.

      Overrides:
      onratechange in class HtmlElementMixed
      Returns:
      This object.
    • onreset

      public Audio onreset(String value)
      Description copied from class: HtmlElement
      onreset attribute.

      Event handler for when a form is reset.

      Overrides:
      onreset in class HtmlElementMixed
      Returns:
      This object.
    • onresize

      public Audio onresize(String value)
      Description copied from class: HtmlElement
      onresize attribute.

      Event handler for when the element is resized.

      Overrides:
      onresize in class HtmlElementMixed
      Returns:
      This object.
    • onscroll

      public Audio onscroll(String value)
      Description copied from class: HtmlElement
      onscroll attribute.

      Event handler for when the element's scrollbar is scrolled.

      Overrides:
      onscroll in class HtmlElementMixed
      Returns:
      This object.
    • onseeked

      public Audio onseeked(String value)
      Description copied from class: HtmlElement
      onseeked attribute.

      Event handler for when a seek operation completes.

      Overrides:
      onseeked in class HtmlElementMixed
      Returns:
      This object.
    • onseeking

      public Audio onseeking(String value)
      Description copied from class: HtmlElement
      onseeking attribute.

      Event handler for when a seek operation begins.

      Overrides:
      onseeking in class HtmlElementMixed
      Returns:
      This object.
    • onselect

      public Audio onselect(String value)
      Description copied from class: HtmlElement
      onselect attribute.

      Event handler for when text is selected in the element.

      Overrides:
      onselect in class HtmlElementMixed
      Returns:
      This object.
    • onshow

      public Audio onshow(String value)
      Description copied from class: HtmlElement
      onshow attribute.

      Event handler for when a context menu is shown.

      Overrides:
      onshow in class HtmlElementMixed
      Returns:
      This object.
    • onstalled

      public Audio onstalled(String value)
      Description copied from class: HtmlElement
      onstalled attribute.

      Event handler for when media loading is stalled.

      Overrides:
      onstalled in class HtmlElementMixed
      Returns:
      This object.
    • onsubmit

      public Audio onsubmit(String value)
      Description copied from class: HtmlElement
      onsubmit attribute.

      Event handler for when a form is submitted.

      Note:

      If your HTML serializer is configured to use single quotes for attribute values, you should use double quotes in your JavaScript code, and vice versa. Otherwise, the quotes will be converted to HTML entities. For example:

      • If using single quotes for attributes: onsubmit("return validate(\"form\")")
      • If using double quotes for attributes: onsubmit("return validate('form')")
      Overrides:
      onsubmit in class HtmlElementMixed
      Returns:
      This object.
    • onsuspend

      public Audio onsuspend(String value)
      Description copied from class: HtmlElement
      onsuspend attribute.

      Event handler for when media loading is suspended.

      Overrides:
      onsuspend in class HtmlElementMixed
      Returns:
      This object.
    • ontimeupdate

      public Audio ontimeupdate(String value)
      Description copied from class: HtmlElement
      ontimeupdate attribute.

      Event handler for when the current playback position changes.

      Overrides:
      ontimeupdate in class HtmlElementMixed
      Returns:
      This object.
    • ontoggle

      public Audio ontoggle(String value)
      Description copied from class: HtmlElement
      ontoggle attribute.

      Event handler for when a details element is opened or closed.

      Overrides:
      ontoggle in class HtmlElementMixed
      Returns:
      This object.
    • onvolumechange

      public Audio onvolumechange(String value)
      Description copied from class: HtmlElement
      onvolumechange attribute.

      Event handler for when the volume of media changes.

      Overrides:
      onvolumechange in class HtmlElementMixed
      Returns:
      This object.
    • onwaiting

      public Audio onwaiting(String value)
      Description copied from class: HtmlElement
      onwaiting attribute.

      Event handler for when media playback stops to buffer more data.

      Overrides:
      onwaiting in class HtmlElementMixed
      Returns:
      This object.
    • spellcheck

      public Audio spellcheck(Object value)
      Description copied from class: HtmlElement
      spellcheck attribute.

      Indicates whether the element should have its spelling and grammar checked.

      Possible values:

      • "true" - Enable spell checking for this element
      • "false" - Disable spell checking for this element
      Overrides:
      spellcheck in class HtmlElementMixed
      Returns:
      This object.
    • style

      public Audio style(String value)
      Description copied from class: HtmlElement
      style attribute.

      Specifies inline CSS styles for the element. The value should be valid CSS property-value pairs separated by semicolons.

      Overrides:
      style in class HtmlElementMixed
      Returns:
      This object.
    • tabindex

      public Audio tabindex(Object value)
      Description copied from class: HtmlElement
      tabindex attribute.

      Specifies the tab order of the element when navigating with the keyboard.

      Possible values:

      • Positive integer - Element is focusable and participates in tab order
      • "0" - Element is focusable but not in tab order
      • Negative integer - Element is not focusable
      Overrides:
      tabindex in class HtmlElementMixed
      Returns:
      This object.
    • title

      public Audio title(String value)
      Description copied from class: HtmlElement
      title attribute.

      Specifies additional information about the element, typically displayed as a tooltip when the user hovers over the element.

      Overrides:
      title in class HtmlElementMixed
      Returns:
      This object.
    • translate

      public Audio translate(Object value)
      Description copied from class: HtmlElement
      translate attribute.

      Specifies whether the element's content should be translated when the page is localized.

      Possible values:

      • "yes" - Content should be translated (default)
      • "no" - Content should not be translated
      Overrides:
      translate in class HtmlElementMixed
      Returns:
      This object.
    • child

      public Audio child(Object value)
      Description copied from class: HtmlElementMixed
      Adds a child element to this element.
      Overrides:
      child in class HtmlElementMixed
      Returns:
      This object.
    • children

      public Audio children(Object... value)
      Description copied from class: HtmlElementMixed
      Adds one or more child elements to this element.
      Overrides:
      children in class HtmlElementMixed
      Returns:
      This object.