Audio Player javascript library
Based on a pen I've created 2 years ago. Due to requests from many people I decided to create a repository, containing an improved version of the Green Audio Player including the support for multiple audio players on a single page.
Download repository ZIP.
Alternatively, you can load it from CDN:
npm i green-audio-player
Include the
green-audio-player.cssor
green-audio-player.min.cssfile:
and
green-audio-player.jsfile (or
green-audio-player.min.js):
html
Add the audio tag inside of a container. You are free to add any attributes. Green Audio Player does not change the audio tag, so for example if you want the audio to loop, you can add the loop attribute to the audio tag.
This will initialize the Green Audio Player
javascript new GreenAudioPlayer('.gap-example');
You can add multiple players on a single page.
There's a shorter method for initializing several Green Audio Players:
js GreenAudioPlayer.init({ selector: '.player', // inits Green Audio Player on each audio container that has class "player" stopOthersOnPlay: true });
Refer to
/examplesfolder for demos of single and multiple players.
| Option | Description | Values | Default | |--------|-------------|--------|---------| | stopOthersOnPlay | Whether other audio players shall get paused when hitting play |
true,
false|
false| showDownloadButton | Allow audio file download. Displays the download button. |
true,
false|
false| enableKeystrokes | Players have keystrokes associated with functions. |
true,
false|
false| showTooltips | Labels for play, volume and download buttons visible on focus |
true,
false|
false
The tooltip option requires setting
showTooltipsto true on your player.
In order to improve accessibility, keyboard navigation can be enabled, by passing the
enableKeystrokesoption. By default, the outline is disabled on elements. If you want to add outline to elements add
player-accessibleclass to the player element:
...
You can focus on elements with Tab key and use the following keys to use the player controls.
| Key | Action | |--------|-------------| | Tab | Focus on the next element | | Shift + Tab | Focus on the previous element | | Enter or Spacebar | Pause/Play | | Right Arrow | Fast-forward | | Left Arrow | Rewind | | Enter or Spacebar | Show/hide volume slider | | Up Arrow | Increase volume | | Down Arrow | Decrease volume | | Enter | Download |