我目前正在制作一个简单的音乐应用程序,使用Ionic框架作为练习。这是我第一次使用Ionic并第一次使用AngularJS。现在我想确保当某个播放列表中的某首歌完成后,下一首播放开始。但是,onended
HTML属性似乎没有做任何事情。
首先尝试
menu.html
<audio ng-src="{{ audioSrc }}" controls class="player" id="trackPlayer" autoplay="true" onended="nextTrack()">
<source type="audio/mpeg">
Your browser does not support the audio element.
</audio>
controller.js
//check if audio is finished
$scope.nextTrack = function () {
//find the right playlist and right current song id
alert("ended");
console.log($rootScope.nowPlaying);
//set new audiosrc for audioplayer
}
我也试图通过javascript直接定位音频播放器,但这也不起作用。
第二次尝试
controller.js
document.getElementById('trackPlayer').addEventListener('onended', $scope.nextTrack());
在alert('ended!')
中将onended
放入我的音频标签中,但是当我的音频播放完毕时,其他任何内容都不会给出响应。
我已经看了一遍,但还没有找到解决方案或解释。
谁知道我做错了什么?
提前致谢。