我有一个代码,我想在上一首轨道结束时播放下一首轨道,但我有一个问题,当我再次开始播放上一首轨道时,“结束”事件触发了不止一次,我没有想法如何修复它
AudioPlayer.prototype.listenToEndedTrack = function() {
var _this = this ;
this.audioPlayerUid.addEventListener("ended", function() {
console.log("Ended");
_this.audioPlayerUid.removeEventListener('ended');
}) ;
}
最佳答案
您没有删除事件监听器,因为它需要监听器和事件类型。
根据您的代码示例,这样的事情应该可行:
AudioPlayer.prototype.listenToEndedTrack = function() {
var _this = this;
function listener() {
console.log("Ended");
_this.audioPlayerUid.removeEventListener("ended", listener);
}
this.audioPlayerUid.addEventListener("ended", listener) ;
}
关于javascript - 为什么 "ended"音频html5事件多次触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34398667/