Mediaelement.js: 点击视频显示控制面板

Mediaelement.js: Show controls panel on click the video

我想仅在点击(播放事件)视频时显示 "controls" 面板。

我已经隐藏了“.mejs-controls”:

CSS

.mejs-controls{ visibility:hidden; }

并设置如下:

JS

$('video,audio').mediaelementplayer({
    alwaysShowControls: true,
    success: function (mediaElement, domObject) {
        mediaElement.addEventListener('play', function(e) {
            $('.mejs-controls').css("visibility", "visible");
        }, false);
    }
});

它对我有用,但如果我在页面上有多个播放器,它会显示此页面上每个播放器的控件。我怎样才能避免这种情况并只在我点击的播放器中显示控件?

更新

HTML很简单:

<div class="video-wrapper">
                    <video src="images/video/video.mp4" poster="images/video/poster.jpg"></video>
                </div>

取决于您使用的 HTML 结构。

所以你的问题是你的目标是所有 $('.mejs-controls') 而不是(这里的例子是因为你没有显示任何 HTML)只有与 $(this)

$(this).closest("div").find('.mejs-controls').css("visibility", "visible");

所以这一切都是为了找出所需的 DOM 遍历方法 - 为了获得正确的元素,但始终指的是 this 交互的.