我正在尝试根据当天的时间在某个特定点播放视频。例如,如果是下午16:12:54,我的视频将从16:12:54开始播放。如果是下午16:13:00,则视频将从16:13:00开始,依此类推。目前,它仅在一天中的特定时间播放。非常感谢。
function checkTimeAndPlay() {
var date = new Date();
if (date.getHours() == 12 && date.getMinutes() == 0) {
document.getElementById('video_id').play();
} else {
setTimeout("checkTimeAndPlay", 1000);
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
最佳答案
您需要检查当前时间和目标时间。因此,您应该使用.getHours()
来获取小时,使用.getMinutes()
来获取分钟,使用.getSeconds()
来获取它们进行检查。
function checkTimeAndPlay() {
var date = new Date();
// Check if time is 16:12:54
if (date.getHours() == 16 && date.getMinutes() == 12 && date.getSeconds() == 54)
document.getElementById('video_id').play();
else {
console.log("Time isn't match");
setTimeout(checkTimeAndPlay, 1000);
}
}
checkTimeAndPlay();
另外,如果要从特殊时间(当前时间)播放视频,则应更改视频的
currentTime
属性。var date = new Date();
var vid = document.getElementById("myVideo");
vid.currentTime = (date.getHours()*3600) + (date.getMinutes()*60) + date.getSeconds();
vid.play();