【问题标题】:How to set currentTime in video.js in Safari for iOS如何在 Safari for iOS 中的 video.js 中设置 currentTime
【发布时间】:2015-03-03 03:27:54
【问题描述】:

其他还可以,但是currentTime的设置:

我尝试了一些方法,例如:

videojs("example_video_1", {}, function() {
    this.currentTime(200);
    this.play();
});

这是行不通的。

videojs("example_video_1").ready(function(){
    this.currentTime(200);
});

这也行不通。

var dom = document.getElementById('example_video_1');
dom.addEventListener("loadedmetadata", function() {
    dom.currentTime = 100;
}, false);    // ok for no video.js
videojs(dom);

不工作。甚至反转addEventListener 的行并初始化videojs。

我尝试了 videojs 事件。

var player = videojs("example_video_1");
alert(player.addEvent);
alert(player.addEventListener);

这些API都不存在,如何在videojs绑定Event?

【问题讨论】:

    标签: ios iphone video.js


    【解决方案1】:

    这就是我在启动时在定义的位置播放视频的方式(它消除了视频首先开始然后才跳转到视频位置的问题):

    $(document).ready(function()
    {
        var timecode = 120;
        var initdone = false;
    
        // wait for video metadata to load, then set time 
        video.on("loadedmetadata", function(){
            video.currentTime(timecode);
        });
    
        // iPhone/iPad need to play first, then set the time
        // events: https://www.w3.org/TR/html5/embedded-content-0.html#mediaevents
        video.on("canplaythrough", function(){
            if(!initdone)
            {
                video.currentTime(timecode);
                initdone = true;
            }
        });
    
    }); // END ready
    

    【讨论】:

    • 这是正确的答案,这也适用于 Mac Safari。
    【解决方案2】:

    哦,幸运的是,我在https://github.com/videojs/video.js找到了一个例子

    var dom = document.getElementById('example_video_1');
    videojs(dom, {}, function(){
        this.on('loadedmetadata', function(){
            this.currentTime(500);
        });
    });
    

    这行,绑定事件的API是player.on('event', fn);

    videojs 很酷~

    【讨论】:

    • 对我来说,这适用于 MacOS 上的 Safari,但不适用于 iOS。
    • 对我来说,它只在某些时候有效。我看到位置已设置,然后它跳回来。任何想法如何解决它?
    猜你喜欢
    • 2023-03-12
    • 2015-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-12
    • 2017-09-23
    • 1970-01-01
    • 2016-02-14
    相关资源
    最近更新 更多