我有一个代码,我希望在上一首曲目结束时播放下一曲目,但我有一个问题,当我再次开始播放上一曲目时,"结束"事件触发更多,一次,我不知道如何解决它
AudioPlayer.prototype.listenToEndedTrack = function() {
var _this = this ;
this.audioPlayerUid.addEventListener("ended", function() {
console.log("Ended");
_this.audioPlayerUid.removeEventListener('ended');
}) ;
}
答案 0 :(得分:0)
您还没有删除事件侦听器,因为它需要侦听器以及事件类型。
根据您的代码示例,这样的内容应该有效:
AudioPlayer.prototype.listenToEndedTrack = function() {
var _this = this;
function listener() {
console.log("Ended");
_this.audioPlayerUid.removeEventListener("ended", listener);
}
this.audioPlayerUid.addEventListener("ended", listener) ;
}