簡體   English   中英

配置VideoJS Flash后備

[英]Configure VideoJS Flash fallback

由於Firefox不允許我在<video> -tag中使用.mp4文件,因此必須在VideoJS Player上使用Flash-fallback。

對於Chrome,Safari和IE,我可以使用JavaScript配置VideoJS播放器以執行幾乎所有操作。 例如,我喜歡循環播放5次,隱藏控件並使視頻靜音。 HTML5版本沒有問題:

// Initialize the video with some settings
videojs(videoID, { 
    "controls": false, 
    "autoplay": false,
    "preload":  "auto",
});

var myVideo = videojs(videoID);

// Set the counter
var loop_count = 1;

// Function to loop the video exaclty 5 times
var loopInstagramVideo = function() {
    if (loop_count <= 5) {
        myVideo.play();
        loop_count++;
    } else {
        loop_count = 1;
    }
};

// Function to manipulatie the playing video (mute, no controls,...)
var setVideoOptions = function() {
     myVideo.muted(1);
     myVideo.controls(0);
};

// Set functions on the video
myVideo.on("play", setVideoOptions);
myVideo.on("ended", loopInstagramVideo);

因此,我想對Flash版本執行相同的操作。
上面的代碼在videojs上生成錯誤,並videojs以下錯誤:

TypeError: The element or ID supplied is not valid. (videojs)

關於如何解決這個問題有什么想法?

盡管這不是您“循環”問題的答案,但我只是發現在元素上調用videojs()之后,ID發生了變化。 我不知道是元素ID的更改還是videojs調用的焦點的更改。 與ID無效有關的錯誤是由您的第一個和第二個videojs()調用引起的。

我會改變這一點:

videojs(videoID, { 
    "controls": false, 
    "autoplay": false,
    "preload":  "auto",
});

var myVideo = videojs(videoID);

對此:

var myVideo = videojs(videoID);

myVideo.controls = false;
myVideo.autoplay = false;
myVideo.preload = "auto";

或將這些屬性放入視頻代碼本身。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM