如何停止所有正在播放的MediaElement播放器?

Dav*_*vid 6 javascript jquery mediaelement.js

我想知道如何阻止目前在DOM中的所有MediaElement播放器.我试过这个:

$('video,audio').each(function() {
      $(this)[0].player.pause();
});
Run Code Online (Sandbox Code Playgroud)

如果有效,请告诉我.

一个快速而肮脏的,但都不起作用.

$(".mejs-play").live('click',function(){
  $(".mejs-pause").trigger('click');                              
});
Run Code Online (Sandbox Code Playgroud)

试图在这个上做我的作业,但似乎无法找到回应.

ale*_*lex 8

试试这个...

$('video, audio').each(function() {
      $(this)[0].pause();
});
Run Code Online (Sandbox Code Playgroud)


Bar*_*art 5

这是一个简单的方法来"停止所有".

首次创建MediaElement播放器时,请分别创建它们(而不是使用$('video,audio').mediaelementplayer()):

var mediaElementPlayers = [];
$('video,audio').each(function(){
    mediaElementPlayers.push(new MediaElementPlayer(this));
});
Run Code Online (Sandbox Code Playgroud)

然后,当你想要阻止它们时:

for (var i=0; i<mediaElementPlayers.length; i++){
    mediaElementPlayers[i].pause(); // pause
    if (mediaElementPlayers[i].getCurrentTime()){
        mediaElementPlayers[i].setCurrentTime(0); // rewind
    }
}
Run Code Online (Sandbox Code Playgroud)