4

「currentSrc」は、複数のソース (*.mp3、*.ogg など) で html5 ビデオのソース 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>

現在の動画の URL を取得する

HTMLページのJavascript(正常に動作します):

myVid=document.getElementById("video1");
    function getVid(){
        alert(myVid.currentSrc);
    };

Jquery 内の行 (「未定義」をスロー):

alert($hdVideo.currentSrc);

私を助けてください...

4

2 に答える 2

5

jQueryオブジェクトにはプロパティcurrentSrcがないため、undefinedを返します。

alert( $hdVideo.get(0).currentSrc );
alert( $hdVideo[0].currentSrc );
alert( $hdVideo.prop("currentSrc") );   //might be attr() instead of prop()
于 2012-10-05T15:03:20.197 に答える
3

DOM 要素と jQuery でラップされた DOM 要素には、同じプロパティまたはメソッドはありません。jQuery でラップされた DOM 要素から DOM 要素のプロパティにアクセスする場合は、get()またはインデクサーを使用して、基になる DOM 要素にアクセスする必要があります。

alert($hdVideo.get(0).currentSrc);
alert($hdVideo[0].currentSrc);
于 2012-10-05T15:05:44.330 に答える