如果使用jquery,如何在html5中显示分钟和秒的CurrentTime ?
我希望在显示CurrentTime分钟和第二个video时看到。
var id = $('#main_video_player'); alert(id.get(0).currentTime); //worked i see '12.324543356' var minnow=id.get(0).currentTime.split('.')[0]; alert(minnow); //not worked var secnow=id.get(0).currentTime.split('.')[1].substr('0','1'); alert(secnow); //not worked
谢谢大家的帮助=)
show seconds的正确代码:
alert(time.toString().split('.')[0]);
代码显示以小时,分钟为单位显示正确的时间:
var id = $('#video'); timenow=id.get(0).currentTime; if (parseInt(timenow)/60>=1) { var h = Math.floor(timenow / 3600); timenow = timenow - h * 3600; var m = Math.floor(timenow / 60); var s = Math.floor(timenow % 60); if(h.toString().length<2){h='0'+h;} if(m.toString().length<2){m='0'+m;} if(s.toString().length<2){s='0'+s;} alert(h+' : '+m+' : '+s); } else { var m = Math.floor(timenow / 60); var s = Math.floor(timenow % 60); if(m.toString().length<2){m='0'+m;} if(s.toString().length<2){s='0'+s;} alert(m+' : '+s); }
您需要将currentTime
转换为String
以对其执行.split()
和.substr()
,例如
var time = id.get(0).currentTime; var minutes = time.toString().split('.')[0]; var seconds = time.toString().split('.')[1].substr('0','1');
要将它们转换回float
(Number)以便与数值函数一起使用,请执行以下操作:
minutes = parseFloat(minutes);
有关工作示例,请参阅http://jsfiddle.net/NpgD5/23/ (点击video获取时间)。
编辑: currentTime
返回以秒为单位的时间,因此你的minnow
变量实际上是秒, secnow
是毫秒,从currentTime
获得分钟和秒的更好方法是:
var time = id.get(0).currentTime; var minutes = Math.floor(time / 60); var seconds = Math.floor(time);
您可以这样编码:
var id = $('#main_video_player'); var idn = 'VideoBar_wrap'; alert(id.get(0).currentTime); //worked i see '12.324543356' var minnow=String(id.get(0).currentTime).split('.')[0]; alert(minnow); var secnow=String(String(id.get(0).currentTime).split('.')[1]).substr(0,1); alert(secnow);
您必须将currentTime值转换为String对象