如何获取视频src属性

时间:2016-06-07 05:08:13

标签: javascript jquery

我需要获取视频标记的src属性,但是出了点问题:

<video id="vdisk" controls poster="placeh/02.jpg">
    <source src="placeh/01.mp4" type="video/mp4">
</video>

的JavaScript

var a = $("#vdisk").attr("src");
console.log(a); // undefined

8 个答案:

答案 0 :(得分:1)

由于source#vdisk的后代,请尝试以下方法: -

var a = $("#vdisk source").attr("src");
console.log(a);

Reference

答案 1 :(得分:1)

使用此功能。

document.getElementById("vdisk").getElementsByTagName("source")[SourceIndex].src

答案 2 :(得分:0)

var a = $("#vdisk").find('source').attr("src");
console.log(a); // undefined
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<video id="vdisk" controls poster="placeh/02.jpg">
  <source src="placeh/01.mp4" type="video/mp4">
</video>
js

使用.find()

  

描述:获取当前匹配元素集中每个元素的后代,由选择器,jQuery对象或元素过滤。

答案 3 :(得分:0)

这不是#vdisk的属性。你必须像这样访问内部元素:$("#vdisk").children("source").attr("src")

答案 4 :(得分:0)

你必须得到元素&#34; source&#34; ,具有属性&#34; src&#34;

答案 5 :(得分:0)

currentSrc属性将获得src用于视频的<source>

在你的情况下,只有一个<source>,所以&#34; placeh / 01.mp4&#34;是视频currentSrc唯一可能的价值(除非还有其他问题)。

请注意,这不是jQuery属性。您必须将jQuery对象转换为DOM元素才能使用它。

var a = $("#vdisk").get(0).currentSrc;
console.log(a); // "placeh/01.mp4"

答案 6 :(得分:0)

$.each($("#id").get,function(){})

怎么样?

&#13;
&#13;
$.each($('#vdisk').get(),function(index, element)
{
  console.log(element.paused)
  //if(!element.paused) console.log(element.attr("src")) or something...
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<video id="vdisk" controls poster="http://www.freedigitalphotos.net/images/img/homepage/87357.jpg">
  <source src="http://texasmotherfriendly.org/video/Childrens_Courtyard_640x360.mp4" type="video/mp4">
</video>
&#13;
&#13;
&#13;

答案 7 :(得分:-1)

这是解决方案..

$("#vdisk source").attr("src")