1

视频在几个循环后停止,在我更新 Chrome 浏览器之前,这个错误不存在。

var Video = document.getElementById('video');
$('#video').hide();
if (typeof Video.loop == 'boolean') { 
    Video.loop = true;
} else { 
    Video.bind('ended', function() {
        this.currentTime = 0;
        this.play();
        console.log("ended");
    }, false);
}

如果我删除此代码并运行:

Video.bind('ended', function() {
            this.currentTime = 0;
            this.play();
            console.log("ended");
        }, false);

在没有发生任何事情并且视频停止之后,我可以在我的 js 控制台中看到 15 次“结束”。Windows 7 Ultimate 上的 Chrome 版本 27.0.1453.116 m

已编辑:此问题仅出现在 .mp4 中,因为 .ogg 自动循环正常工作。

4

1 回答 1

0

由于您先调用,您可能会遇到将结束事件绑定到视频元素的问题$('#video').hide();。我知道这会影响点击事件,因此它也可能会影响视频播放器事件。

尝试将 hide 调用放在 if 语句下面:

var Video = document.getElementById('video');
if (typeof Video.loop == 'boolean') { 
    Video.loop = true;
} else { 
    Video.bind('ended', function() {
        this.currentTime = 0;
        this.play();
        console.log("ended");
    }, false);
}
$('#video').hide();
于 2013-07-08T08:15:54.240 回答