获取视频播放器当前时间时,javascript停止响应 var startTime=parent.startTime; var endTime=parent.endTime; var divID='#'+parent.divID; var description=parent.description; 做{ var currentTime1=$('video').get(0).currentTime; 如果(currentTime1>=startTime){ console.log('in if');alert('hi'); 父项。$(divID).追加(说明); } setTimeout(函数(){$('video').get(0).currentTime=$('video').get(0).currentTime+1;currentTime1=parseInt($('video').get(0.currentTime);},1000); }而(currentTime1

获取视频播放器当前时间时,javascript停止响应 var startTime=parent.startTime; var endTime=parent.endTime; var divID='#'+parent.divID; var description=parent.description; 做{ var currentTime1=$('video').get(0).currentTime; 如果(currentTime1>=startTime){ console.log('in if');alert('hi'); 父项。$(divID).追加(说明); } setTimeout(函数(){$('video').get(0).currentTime=$('video').get(0).currentTime+1;currentTime1=parseInt($('video').get(0.currentTime);},1000); }而(currentTime1,javascript,do-while,Javascript,Do While,您的代码进入无限循环,因为 var startTime = parent.startTime; var endTime = parent.endTime; var divID = '#'+parent.divId; var description = parent.description; do { var currentTime1 = $('video').get(0).currentTime; if(currentTime1 >= startTime) {

您的代码进入无限循环,因为

var startTime = parent.startTime;
var endTime = parent.endTime;
var divID = '#'+parent.divId;
var description = parent.description;

do {
    var currentTime1 = $('video').get(0).currentTime;
    if(currentTime1 >= startTime) {
        console.log('in if');alert('hi');
        parent.$(divID).append(description);
    }
    setTimeout(function(){$('video').get(0).currentTime = $('video').get(0).currentTime + 1; currentTime1 = parseInt($('video').get(0).currentTime); }, 1000);

} while (currentTime1 <= endTime);

parent.$(divID).empty(); console.log('at end');
do{
var currentTime1=$('video').get(0).currentTime;
}while(当前时间1

此代码在没有循环构造的情况下工作。setInterval()用于一次又一次地重复操作。

当操作发生时,您是否查看了控制台中的任何输出?如果是,请发布它。这意味着您正在进入一个无限循环。只需记录currentTime1和endTime以查看它们是否有效。对象CurrentTime始终为0,不递增,endTime为15。但脚本在fir中暂停此行的st时间currentTime1=$('video').get(0)。currentTime;调试器在$('video').get(0)处显示脚本暂停.currentTime Code请告诉我为什么currentTime不提供每次访问播放器时更新的提示时间it@arun您执行此
,而
像989213次一样,您的视频时间不会更新,因为您的代码阻止了任何进一步的执行,浏览器检测到您将进入无限循环并终止它。my video st21秒后开始表演。不知道为什么视频播放器会增加开始时间。为什么?
do {
    var currentTime1 = $('video').get(0).currentTime;
} while (currentTime1 <= endTime);
var startTime = parent.startTime;
            var endTime = parent.endTime;
            var divID = '#'+parent.divId;
            var description = parent.description;

            var myVar = setInterval(check,1000);
function check()
        {
            var currentTime1 = parseInt($('video').get(0).currentTime);

            if(currentTime1 >= parent.endTime) 
            { 
                clearInterval(myVar);
                parent.$(divID).empty(); 
            }
           else if(currentTime1 >= parent.startTime) 
            {  
                parent.$(divID).empty();
                parent.$(divID).append(description);                       
            } 
        }