我正在尝试让我的视频(本地托管,而不是流式传输)在一定时间后开始播放,并在一定时间后停止播放。这里有人用Java帮助了我,但对我却不起作用-完全不会影响播放时间。

因此,在 header 中,我这样调用了javascript:

<script src="Backend/build/Timer.js"></script>

实际的javascript看起来像这样:
// JavaScript Document

var starttime = 2000;  // start at 2 seconds
var endtime = 4000;    // stop at 4 seconds

var video = document.getElementById('player1');
video.currentTime = starttime;

video.addEventListener("timeupdate", function() {
    if (video.currentTime >= endtime) {
        video.pause();
    }
}, false);

最佳答案

  • 将代码包装到一个函数中,并在文档就绪或主体加载事件处理程序中调用该函数,否则video变量值可能无效。
  • 根据W3C standard:



    如果要在2秒开始播放视频并在4秒停止播放(在视频时间戳记中),请分别将starttimeendtime设置为2、4,而不是2000、4000。此外,在寻求starttime之前,必须加载视频资源一次
    function playVideo() {
        var starttime = 2;  // start at 2 seconds
        var endtime = 4;    // stop at 4 seconds
    
        var video = document.getElementById('player1');
    
        //handler should be bound first
        video.addEventListener("timeupdate", function() {
           if (this.currentTime >= endtime) {
                this.pause();
            }
        }, false);
    
        //suppose that video src has been already set properly
        video.load();
        video.play();    //must call this otherwise can't seek on some browsers, e.g. Firefox 4
        try {
            video.currentTime = starttime;
        } catch (ex) {
            //handle exceptions here
        }
    }
    
  • 关于javascript - Javascript事件监听器可在特定时间启动视频,并在特定持续时间后停止视频,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8140539/

    10-11 22:20
    查看更多