【问题标题】:How to detect pause button click in mediaelement?如何检测mediaelement中的暂停按钮点击?
【发布时间】:2014-06-08 19:12:37
【问题描述】:

我正在尝试检测媒体元素暂停按钮上的点击事件

http://jsfiddle.net/wLu2v/9/

var player = new MediaElementPlayer('.player_1');

$('body').on('click', '.mejs-pause', function (e) {
    $('.items').append('<li>paused</li>');
});

我还尝试了mejs-pause button 和其他一些组合,但无法检测到该事件。 任何帮助表示赞赏

【问题讨论】:

  • 我只是在网上看其他一些帖子,看起来“播放/暂停”按钮实际上是一个 div 内的按钮,其样式为 .mejs-pause 类。你可以试试 $("button[title='Play/Pause']").但是,如果您的屏幕上有多个“播放/暂停”按钮,您将获得所有按钮。
  • $("button[title='Play/Pause']").on("click", function (e) { console.log("111"); $('.items' ).append('
  • 暂停
  • '); });

标签: jquery mediaelement.js


【解决方案1】:

您需要在success 设置上将event 侦听器添加到MEJS 初始化脚本,例如:

var player = new MediaElementPlayer('.player_1', {
    success: function (mediaElement, domObject) {
        mediaElement.addEventListener('pause', function () {
            // do something here
            $('.items').append('<li>paused</li>');
        }, false);
    }
});

查看你的分叉JSFIDDLE

【讨论】:

    【解决方案2】:

    试试这个,于 2020 年 3 月使用最新的 mediaelement.js 进行测试

    $('audio').mediaelementplayer({
        pluginPath: 'https://cdnjs.com/libraries/mediaelement/',
        shimScriptAccess: 'always',
        success: function (mediaElement, domObject) {
            mediaElement.addEventListener('play', function () {
              var aid = $(domObject).closest(".mejs__container").attr('id');
              document.getElementById(aid).getElementsByClassName("mejs__time-rail")[0].style.display = "block";
            }, false);
        }
      });
    

    【讨论】:

      猜你喜欢
      相关资源
      最近更新 更多
      热门标签