原生js倒计时

时间:2023-01-10 09:50:55

原生js倒计时

此倒计时是一个刚入门俩月的菜鸟所写,大佬,大神,大牛请无视

本人在写倒计时的时候各种百度,发现那些代码太多了,我只想找一个超级简单的
原生js倒计时
就是这种的,但是发现代码一大堆啊,看的我头晕目眩,没办法只好自己写了

写之前你要明白这几句是啥意思

new Date()   //当前时间

getTime() //指定的日期和时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数

能明白这两句的用法基本上就简单了,下面上代码


<script type="text/javascript">
function djs(){
var p = document.getElementById("p")
var myDate = new Date() //获取的当前时间(本机时间)
var newDate = new Date("2017/8/12 18:00:00") //未来的时间(自定义的)
var intDate = (newDate.getTime() - myDate.getTime())/1000
var h = parseInt((intDate / 3600) % 24),
m = parseInt((intDate / 60) % 60),
s = parseInt(intDate % 60);
p.innerHTML = "距结束还剩"+h+"时"+m+"分"+s+"秒"
}
setInterval(function(){ //定时器
djs()
},1000)

</script>

解释一下这句代码:

var intDate = (newDate.getTime() - myDate.getTime())/1000

newDate是未来的某个时间,newDate.getTime()是未来的那个时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数
myDate是现在的时间,myDate.getTime()是现在的时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数

用未来得到的毫秒数减去现在得到的毫秒数就可以得到未来到现在中间间隔的毫秒数

然后在进行转化

var h = parseInt((intDate / 3600) % 24),
m = parseInt((intDate / 60) % 60),
s = parseInt(intDate % 60);

就能得到24小时格式的时间,然后用计时器便可将倒计时实现出来
原生js倒计时

附上自己QQ:923798729
欢迎单身妹纸进行技术交流