我将项目从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,唯一的问题是高度,视频被渲染。播放没有问题(例如,如果我使用开发人员工具编辑元素的高度)
答案 0 :(得分:0)
documentation for MediaElementJsPlayer说,如果未在video标签中指定height属性,则使用defaultVideoHeight。您的视频标签是否包含height属性?
您可以使用videoHeight配置选项设置每个视频的视频高度。还要检查拉伸选项。其默认值为auto。您可能需要将其设置为none,以便播放器不会自动调整大小。