mediaelement.js视频高度计算不正确

时间:2018-06-29 17:06:48

标签: mediaelement.js

我将项目从mediaelement.js 2.23.4更新到了4.2.9。
我已经读过migrate instructions,但我想什么都没错过。
更新后,由于高度计算不正确,导致视频无法正确显示。

在setResponsiveMode中,t.media.videoWidth / Height始终为0, 我注意到“ loadedmetadata”没有被触发。

在以前的版本中,将触发loadedmetadata,然后最终设置setResponsiveMode,并在那时设置t.media.videoWidth / Height。

我的代码如下:

$("video").each(function () {
                $(this).attr("preload", "metadata");
                var src = this.src;
                $(this).mediaelementplayer({
                    features          : ["playpause", "progress", "tracks"],
                    defaultVideoWidth : 480,
                    defaultVideoHeight: 270,
                    type              : 'video/flv',
                    renderers: ['html5', 'flash_video'],
                    pluginPath: 'js/',
                    classPrefix:'mejs-',
                    shimScriptAccess: 'sameDomain',
                    success           : function (e) {

                    }
                });
            });

目前我还没有一个简单的例子,但是我怀疑它可以在一个干净的项目中工作。
我的项目很复杂,我想我错过了一些东西。 有什么想法吗?

PS,唯一的问题是高度,视频被渲染。播放没有问题(例如,如果我使用开发人员工具编辑元素的高度)

1 个答案:

答案 0 :(得分:0)

documentation for MediaElementJsPlayer说,如果未在video标签中指定height属性,则使用defaultVideoHeight。您的视频标签是否包含height属性?

您可以使用videoHeight配置选项设置每个视频的视频高度。还要检查拉伸选项。其默认值为auto。您可能需要将其设置为none,以便播放器不会自动调整大小。