mui-player监听播放器会触发两次解决代码说明
时间: 2023-08-06 13:03:27 浏览: 92
以下是一种可能的解决方案,用于解决 MUI Player 监听播放器会触发两次的问题:
1. 检查是否重复绑定了同一个回调函数。如果是,只需保留一次绑定即可。
```javascript
var myCallback = function() {
console.log('播放器事件触发了');
};
// 绑定事件时先检查是否已经绑定了相同的回调函数
if (!muiPlayer.hasEventListener('play', myCallback)) {
muiPlayer.addEventListener('play', myCallback);
}
```
2. 将多个事件的处理逻辑拆分成多个独立的回调函数,并分别绑定给相应的事件。
```javascript
var onPlay = function() {
console.log('播放器开始播放了');
};
var onPause = function() {
console.log('播放器暂停了');
};
muiPlayer.addEventListener('play', onPlay);
muiPlayer.addEventListener('pause', onPause);
```
3. 在回调函数中添加判断,如果已经触发过一次,则不再执行后续的代码。可以使用一个标志变量来记录回调函数是否已经被触发过。
```javascript
var isCallbackCalled = false;
var myCallback = function() {
if (!isCallbackCalled) {
isCallbackCalled = true;
console.log('播放器事件触发了');
}
};
muiPlayer.addEventListener('play', myCallback);
```
希望这些示例代码能够帮助你解决问题。
阅读全文