如何在jquery中获取视频高度

如何在jquery中获取视频高度,jquery,video,Jquery,Video,使用此代码时,高度始终为零。请帮忙 var path = "http://localhost:49634/Uploads/TimeLineImages/05_24_2018_12_48_32_Entering_manufacturing.jpg"; var video = $('<video />', { id: 'videoddd', src: path, type: 'video/mp4' }); var _height = video[0].videoHeight;

使用此代码时,高度始终为零。请帮忙

var path = "http://localhost:49634/Uploads/TimeLineImages/05_24_2018_12_48_32_Entering_manufacturing.jpg";
var video = $('<video />', {
  id: 'videoddd',
  src: path,
  type: 'video/mp4'
});
var _height = video[0].videoHeight;
alert(_height);
var路径=”http://localhost:49634/Uploads/TimeLineImages/05_24_2018_12_48_32_Entering_manufacturing.jpg";
var视频=$(''{
id:'videoddd',
src:path,
类型:“视频/mp4”
});
var_height=video[0]。videoHeight;
警戒(_高度);
试试这个

var video = document.getElementsByTagName("video")[0];
video.setAttribute('height', '300');
video.setAttribute('width ', '700');
or setting its width and height properties

var video = document.getElementsByTagName("video")[0];
video.height = 300;
video.width = 700;

首先请注意,您为该视频设置的
src
是JPG图像。我想那只是个打字错误

关于这个问题,要计算元素的维度,它必须存在于DOM中。无法获取内存中元素的维度。因此,您需要首先
append()
视频。您还需要等待浏览器加载视频的元数据,这可以使用事件处理程序实现,如下所示:

var video = $('<video />', {
  id: 'videoddd',
  src: path,
  type: 'video/mp4'
}).appendTo('#your-container');

$('#your-container').on('loadedmetadata', 'video', function() {
  var _height = this.videoHeight;
  console.log(_height);
});
var video=$(''{
id:'videoddd',
src:path,
类型:“视频/mp4”
}).appendTo(“#您的容器”);
$(“#您的容器”)。在('loadedmetadata','video',function()上{
var_height=此高度;
控制台日志(高度);
});

如果您不希望此时显示视频,可以使用CSS将其(或其父元素)设置为
display:none

我希望使用其路径显示视频的高度我需要将高度作为全局变量。var path=window.location.origin+data.TimeLineMediaList[I]。TimeLineMediaPath;var video=$(“”,{id:'video',src:path,type:'video/mp4'})$('decadeyarsdiv').on('loadedmetadata','video',function(){u height=this.videoHeight;});警戒(_高度);因此,在事件处理程序外部定义
var\u height
。请注意,在触发
loadedmetadata
事件之前,它将是
undefined
d还建议您避免使用全局变量,因为它们是不好的做法。_heightvalue使用了其他位置。因此它应该是全局的@RoryDon不使用globals。除此之外,由于检索视频维度的方式是异步的(换句话说,您需要等待视频加载,然后才能确定它有多大),因此它们在这里不起作用。你需要改变你的逻辑,才能像我在问题中概述的那样工作。如果需要在其他位置使用
\u height
,请将其作为参数传递给函数。