“currentSrc”是我在html5视频中使用多个源(* .mp3,* .ogg等)切换源src的唯一选项。
如果我在Jquery中使用,“currentSrc”会抛出“undefined”。 但如果我在html页面中调用它,它的工作正常。
详细说明: 我的视频来源:
<video width="630" height="354" id="video1" class="video1" poster="asserts/poster.png" controls="controls" data-name="demo video" data-uid="57fb2708">
<source src="http://static.clipcanvas.com/sample/clipcanvas_14348_H264_320x180.mp4" data-quality="sd" />
<source src="asserts/samllfile.mp4" data-quality="hd" />
<source src="http://static.clipcanvas.com/elephants-dream.webm" data-quality="hd" />
<source src="http://video.webmfiles.org/big-buck-bunny_trailer.webm" data-quality="sd"/>
<source src="http://video.webmfiles.org/elephants-dream.webm" data-quality="hd" />
</video>
获取当前视频网址
html页面中的Javascript(工作正常):
myVid=document.getElementById("video1");
function getVid(){
alert(myVid.currentSrc);
};
Jquery中的行(抛出“未定义”):
alert($hdVideo.currentSrc);
请帮帮我......
答案 0 :(得分:5)
因为jQuery对象没有属性currentSrc所以它返回undefined。
alert( $hdVideo.get(0).currentSrc );
alert( $hdVideo[0].currentSrc );
alert( $hdVideo.prop("currentSrc") ); //might be attr() instead of prop()
答案 1 :(得分:3)
DOM元素和jQuery包装的DOM元素没有相同的属性或方法。如果要从jQuery包装的DOM元素访问DOM元素的属性,则需要使用get()
或索引器来访问底层DOM元素:
alert($hdVideo.get(0).currentSrc);
alert($hdVideo[0].currentSrc);