I am using Chrome and this is my code:
<audio id="letter_audio" src="audio/bomb.mp3" type="audio/mp3" preload="auto"></audio>
$('.sound').live('click', function () {
var sound = $("#letter_audio")[0];
sound.pause();
sound.currentTime = 0;
sound.play();
return false;
});
How come the sound plays the first time I click on play. then when I click again, it pauses, like the code goes. but the it justs stays on pause? i want it to play, then when i click on it again, go back to 0 and play again as in the code?
The HTML <audio> element is used to play an audio file on a web page.
HTML5 features include native audio and video support without the need for Flash. The HTML5 <audio> and <video> tags make it simple to add media to a website. You need to set src attribute to identify the media source and include a controls attribute so the user can play and pause the media.
The most supported codecs for playing audio in HTML5 are Ogg Vorbis, MP3, and Wav. There is currently no single codec that plays across all browsers. To get around the potential for codec incompatibility, HTML5 allows you to specify multiple source files.
To embed audio in HTML, we use the <audio> tag. Before HTML5, audio cannot be added to web pages in the Internet Explorer era. To play audio, we used web plugins like Flash. After the release of HTML5, it is possible.
I've had similar problems replaying audio, but managed to solve it by calling the load()
method before the play()
call. Try this:
$('.sound').live('click', function () {
var sound = $("#letter_audio")[0];
sound.load();
sound.play();
return false;
});
I think this is better than resetting the src
attribute for two reasons:
src
value in the page content, rather than in the JavaScriptWorks when you embed multiple <source>
elements of different audio formats:
<audio id="letter_audio">
<source src="audio/bomb.mp3" type="audio/mp3" preload="auto"/>
<source src="audio/bomb.ogg" type="audio/ogg" preload="auto"/>
</audio>
try this.. basically, resetting the src
attribute should reset the audio as desired.
$('.sound').live('click', function () {
var sound = $("#letter_audio")[0];
sound.src = "audio/bomb.mp3";
sound.play();
return false;
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With