处理在mediaelement.js中播放/暂停点击事件

时间:2013-06-17 19:40:27

标签: mediaelement.js

我需要听播放/暂停点击事件。

media.addEventListener("pause", onPause);
media.addEventListener("play", onPlay);

使用这会导致我出现问题,因为在我的代码中我有时需要调用media.play()& media.pause()但我不想让侦听器执行。只听点击可以解决我的问题。

  1. 是否可以更改库代码?
  2. 如果它是唯一的选项,您会如何建议更改库?
  3. 感谢。

1 个答案:

答案 0 :(得分:0)

我的方法是在以编程方式调用play()和pause()之前在媒体数据集中设置一个值。像这样:

media.addEventListener("pause", function(e) {
    if(media.dataset.calledByProgram === undefined || media.dataset.calledByProgram === false) {
        // whatever is in onPause()
    }
    media.dataset.calledByProgram = null;
}, false);

media.dataset.calledByProgram === false测试以防万一您可能已将其设置在代码中的某个位置。

因此,在调用media.play()之前,只需设置media.dataset.calledByProgram = true;

我不知道这是不是最好的做法,但它对我有用。