说我得到一个onclick甚至返回true或false并将其存储在一个变量。如何使用true/false条件在javascript的if循环中暂停视频?
$('.box1').on('click', function(){
boxClicked = true;
video1[0].play();
});
后来在代码中,我正在使用;
$(video1).on('timeupdate', function()
{
var currentTime = Math.round(this.currentTime);
var durationNum = Math.round(this.duration);
var formattedCurrentTime = secondsToHms(currentTime);
var formattedDurationTime = secondsToHms(durationNum)
onTrackedVideoFram(formattedCurrentTime, formattedDurationTime)
if(currentTime == boxTime && boxClicked == true) {
video1[0].pause();
}
});
});
boxTime
是具有比如说10 预先存储的值的变量所以应该在10秒的持续时间的检查,如果boxClick
是true
或false
并且如果false
,它应该暂停视频。
我唯一的问题......它没有这样做。
两种可能:1)你声明'boxClicked'全球范围内,所以这将是提供给两个功能? 2)你确定'timeupdate'运行频率足够多,以至于'currentTime'在某些时候肯定会*完全* 10吗? (我怀疑视频帧速率可能意味着当前时间从10以下跳到10以上,因此从未匹配确切的条件。) –
您是宾果时间问题..它从来没有确切的。在铬它有时好,但在Firefox上它永远不会停止在一个特定的点。 编码这不是一个解决方案,因为我不知道如何解决这个问题。 但是我可以用一种方式创建视频,这样在画面中不会有明显的差别。 – Logan
你说得对,它可能是一个全球性问题。 我把它从true改为false liek @ ajc2000建议和它的工作(即使它不应该) – Logan