2

这是我的代码的一部分:

var myPlayer = document.getElementById("example_video_1");
        if (content=="play()") {
                $('title').html("screen:"+content);
            myPlayer.play();
        }
        if (content=="pause()") {
                $('title').html("screen:"+content);
            myPlayer.pause();
        }
        if (content.indexOf("src(")!=-1) {
            var videoMP4 = content.replace("src(","").replace(")","");
            myPlayer.src({type: "video/mp4", src:videoMP4});
            // {type: "video/webm", src:videoMP4.replace(".mp4", ".webm")},
            //  {type: "video/ogg", src:videoMP4.replace(".mp4", ".ogv")}
            // ]
            myPlayer.play();
        }

暂停功能和播放功能按预期工作。但是由于某种原因,当代码到达

myPlayer.src({type: "video/mp4", src:videoMP4}); 

我的控制台出现错误:

Uncaught TypeError: Property 'src' of object #<HTMLVideoElement> is not a function 

知道为什么会这样吗?

4

3 回答 3

7

var myPlayer = document.getElementById("example_video_1");

返回一个标准的 HTMLvideo元素。你需要使用:

var myPlayer = _V_("example_video_1");

获取 VideoJS 对象。

于 2013-01-09T14:59:39.603 回答
2

更改源和类型,如:

myPlayer.setAttribute("src", videoMP4);
myPlayer.setAttribute("type", "video/mp4");
myPlayer.load();  # Force video refresh...
于 2013-01-09T14:59:50.237 回答
1

src 是一个“DOMString”,而不是一个函数。

请参阅https://developer.mozilla.org/en-US/docs/DOM/HTMLMediaElement

反映 src HTML 属性,包含要使用的媒体资源的 URL。Gecko 实现了可用于流的类似功能:mozSrcObject。

myPlayer.src = videoMP4;

如果你想指定多个(类型化的)源,你需要创建 DOM 元素作为 myPlayer 的子元素。

于 2013-01-09T14:59:44.237 回答