Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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 像真正的数字时钟一样闪烁时间_Javascript_Jquery - Fatal编程技术网

Javascript 像真正的数字时钟一样闪烁时间

Javascript 像真正的数字时钟一样闪烁时间,javascript,jquery,Javascript,Jquery,我以如下方式显示当前时间: $('#mydiv').html( new Date().toLocaleTimeString('en-US', { hour12: false, hour: 'numeric', minute: 'numeric' })); 例如,它是这样显示的: 16:13 怎么可能让这两个点像真正的数字钟一样每秒钟闪烁一次呢?我很好奇,所以我忍不住回答 var-toggle=true; 设置间隔函数{ var d=新日期。toLocaleTimeStrin

我以如下方式显示当前时间:

$('#mydiv').html(
   new Date().toLocaleTimeString('en-US', 
     { hour12: false, hour: 'numeric', minute: 'numeric' }));
例如,它是这样显示的:

16:13


怎么可能让这两个点像真正的数字钟一样每秒钟闪烁一次呢?

我很好奇,所以我忍不住回答

var-toggle=true; 设置间隔函数{ var d=新日期。toLocaleTimeString'en-US',{hour12:false,hour:'numeric',minute:'numeric'}; var零件=d.分割:; $'hours'.textparts[0]; $'minutes'.textparts[1]; $colon.css{可见性:切换?可见:隐藏}; 切换=!切换; },1000; 冒号{可见性:隐藏} :
是的,还是有点有趣,这里有一个更详细的es6示例

函数闪烁时间{ const timeString=新日期。toLocaleTimeString'en-US'{ 小时12:错, 小时:'数字', 分钟:'数字', 第二:“数字” }; const[hours,mins,seconds]=timeString.split':'; const centreChar=seconds%2==0?':':':'; 返回`${hours}${centreChar}${mins}`; } 函数更新时间{ console.logblinkingTime; setTimeoutupdateTime,1000; }
更新时间 我完全同意mplungjan的观点,有更好的问题要问,但是,这样做似乎也很有趣:

闪烁部分,实际上可以使用CSS,不需要javascript技巧见第二个示例

var clockEl=document.querySelector'clock'; 函数getTime{ 返回新日期。toLocaleTimeString'en-US', {hour12:false,hour:'numeric',minute:'numeric'}.toString; } 函数设置时间{ var-time=getTime; //检查是否有冒号 如果clockEl.innerText.split':'.length==1{ //如果不是,请设置实际时间 clockEl.innerText=时间; }否则{ //如果是,移除冒号 clockEl.innerText=time.split':'.join'; } } 设置间隔设置时间,1000; 设定时间; 时钟{字体系列:'Courier new'}
太棒了,在我更改冒号xD后对移动值发表评论之前,你甚至将其更新为一个改进的版本。:是的,我不喜欢这样。我想你可以用CSS闪烁冒号,尽管你仍然需要时间间隔来更新时间,所以这是非常多余的:@rorymcrossan Nice!j08691在他的工作中也做了类似的事情answer@RoryMcCrossan不管怎样,一旦我们使用CSS动画,我们也可以让动画时钟代替setInterval的繁重工作,因为时间变化:这不会在页面上更新,秒会移动一毫米,因为空间比冒号小。你需要用和空格一样宽的东西哈,我想是的。我也可以用一个白色的方块来做一个近乎纯CSS的例子。但是我想我更多的是关于这个问题的逻辑:有人不喜欢我们回答糟糕的问题:/你的第一个移动,第二个比每秒快一次@mplungjan确实如此,但他并没有具体说明:我真的不在乎,如果我愿意,我会使用like courier new或其他东西:但当它闪烁太快时,看起来不现实:P@mplungjan仅针对您,我在第一个示例中使其闪烁变慢,不再移动^ u^;;不知道你为什么被否决了。。。也许有人真的不想让我们回答糟糕的问题