2

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

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

使用它会给我带来问题,因为在我的代码中我有时需要调用 media.play() 和 media.pause() 但我不希望监听器执行。只听点击可以解决我的问题。

  1. 是否可以做或者我必须更改库代码?
  2. 如果它是唯一的选择,你会如何建议改变图书馆?

谢谢。

4

1 回答 1

0

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

media.addEventListener("暂停", function(e) {
    如果(media.dataset.calledByProgram === undefined || media.dataset.calledByProgram === false){
        // onPause() 中的任何内容
    }
    media.dataset.calledByProgram = null;
}, 错误的);

测试是为了media.dataset.calledByProgram === false以防您可能在代码中的某个位置设置了它。

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

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

于 2013-06-20T13:34:54.140 回答