Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML 5视频播放器使用给定数字更新currentTime_Javascript_Html_Html5 Video - Fatal编程技术网

Javascript HTML 5视频播放器使用给定数字更新currentTime

Javascript HTML 5视频播放器使用给定数字更新currentTime,javascript,html,html5-video,Javascript,Html,Html5 Video,我想用用户指定的数字更新currentTime 例如,我有18.20分钟的视频,当用户给出1.46作为输入时,它应该从1.46分钟开始播放视频,如果用户给出4.56分钟,它应该从4.56分钟开始播放 我尝试的是将给定的分钟数转换成数字,但我认为这是错误的 function minsToNumber(d) { d = Number(d); var h = Math.floor(d / 3600); var m = Math.floor(d % 360

我想用用户指定的数字更新
currentTime

例如,我有18.20分钟的视频,当用户给出1.46作为输入时,它应该从1.46分钟开始播放视频,如果用户给出4.56分钟,它应该从4.56分钟开始播放

我尝试的是将给定的分钟数转换成数字,但我认为这是错误的

function minsToNumber(d) {
        d = Number(d);
        var h = Math.floor(d / 3600);
        var m = Math.floor(d % 3600 / 60);
        var s = Math.floor(d % 3600 % 60);
        return ((h > 0 ? h + "." + (m < 10 ? "0" : "") : "") + m + "." + (s < 10 ? "0" : "") + s);
    }
函数minsToNumber(d){
d=数量(d);
var h=数学楼层(d/3600);
var m=数学下限(d%3600/60);
var s=数学下限(d%3600%60);
返回((h>0?h++)(m<10?.0:“):”)+m++(s<10?.0:“)+s);
}
任何人都能给出正确的计算来做这件事吗

HTMLMediaElement.currentTime属性提供当前播放 以秒为单位的时间。设置此值将使媒体适应新的时间

所以如果你需要4分55秒,你必须使用这个值:4*60+55=295

var video = document.getElementById('video');
video.currentTime = 295; // seconds
完整示例:(与@kaido合作创建)


var split=d.split('.');var time=Number(split[0])*60+Number(split[1])
它说split不是一个函数你是如何调用我的函数的<代码>秒('4.55')或
秒('4.55)
?您必须传递一个字符串参数,而不是一个数字。是的,很抱歉它是
到秒(4.55)
。现在它的工作:)我已经更新了我的样本。现在它也适用于数字。尝试使用数字参数调用我的函数。示例:秒(4.55);通过在字符串转换中调用
split
var-toSeconds=function(time){time=(''+time).split('.');return+time[0]*60++time[1];}
var toSeconds = function(time) {

  time = ('' + time).split('.');

  return +time[0] * 60 + +time[1];
};

toSeconds('4.55'); // 295
toSeconds(4.55); // 295