因此,我想循环播放视频,同时创建 playbackRate
的随机值,以在另一个随机时间间隔内随机设置视频的加速和减速。
为此,我有这个:
window.onload = function ()
{
var tempo = Math.floor(Math.random() * 3) + 0.5; // TIME TO SET VIDEO SPEED
var tempo2 = Math.floor(Math.random() * 2000) + 1000; // TIME TO SET INTERVAL TIME
setInterval(function ()
{
document.getElementById("my-video").playbackRate = tempo;
console.log(tempo , tempo2);
}, Math.floor(Math.random() * this.tempo2) + 600);
};
由于某种原因,视频随机加速和减速,正如我预期的那样,但我需要刷新页面来更改值。
谢谢
最佳答案
您需要更新 setInterval
函数中的 tempo
变量
setInterval(function ()
{
document.getElementById("my-video").playbackRate = tempo;
tempo = Math.floor(Math.random() * 3) + 0.5;
console.log(tempo , tempo2);
}, Math.floor(Math.random() * this.tempo2) + 600);
但我认为您还想要更新 tempo2 变量,通过使用更新随机值的函数的 setTimeout 调用,使用 tempo2 作为新的超时。
var update = function () {
document.getElementById("my-video").playbackRate = tempo;
//update random values
tempo = Math.floor(Math.random() * 3) + 0.5;
tempo2 = Math.floor(Math.random() * 2000) + 1000;
console.log(tempo, tempo2);
//recall the method with new tempo2 value
setTimeout(update, tempo2);
}
看那里:
关于javascript - 随机速度的 HTML5 视频 - 自动刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24935986/