HTML5 ऑडियो टैग में एक ईवेंट "ऑनेंडेड" होता है जो मीडिया के अपने अंत तक पहुंचने पर चलाया जाता है, लेकिन चूंकि आप खेलना जारी रखना चाहते हैं, इसलिए आपको "ऑनवेटिंग" ईवेंट का उपयोग करना चाहिए, जो मीडिया के अपने अंत तक पहुंचने पर भी सक्रिय हो जाता है, लेकिन इसके लिए खुद को तैयार रखता है। एक नया ट्रैक/डेटा स्वीकार करें।
फिर आप अगले ट्रैक को चलाने के लिए क्वेरी करने के लिए XMLHttpRequest ऑब्जेक्ट का उपयोग कर सकते हैं, उदा.
<script type="text/javascript">
function getNextTrack(e) {
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "next_track.php", false);
xhttp.send("");
var playback = xhttp.responseXML.childNodes[0];
for(i = 0; i < playback.childNodes.length; ++i) {
if (playback.childNodes[i].nodeName != 'track') continue;
var value = playback.childNodes[i].childNodes[0].nodeValue;
e.currentTarget.src = value;
break;
}
}
</script>
<audio id="player" onwaiting="javascript: getNextTrack(e)" src="first_track.ogg"></audio>
एक्सएमएल के रूप में होगा:
<?xml version="1.0" encoding="UTF-8" ?>
<playback>
<track>next_song.ogg</track>
</playback>