为了账号安全,请及时绑定邮箱和手机立即绑定

倒计时效果

难度初级
时长32分
学习人数
综合评分9.63
561人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.5 逻辑清晰

已采纳回答 / 水货
var time = Math.ceil(data/(1000 * 60 * 60 * 24)); 这条语句中 data 应为 date  

已采纳回答 / jaune
window.onload的作用是页面加载完才执行脚本,所以script放在head或body都行页面是从上往下渲染,当运行到红色框框中的FreshTime(), 并不能找到document.getElementById("LeftTime"),控制台报错。放在window.onload=function(){}是可以执行的,所以去掉红色框框内的代码即可正常运行<...图片...>

已采纳回答 / Dog_leash
var Date=now.getDate();这里不能用Date,因为会与 var now=new Date();混淆,要换成dateweekday【d】里的d没有定义,要在前面加上var d = now.getDay();你可以自己在谷歌浏览器里用开发者工具自己检测bug希望对你有帮助

已采纳回答 / GOCO
document.getElementById()那一行的“;”号是中文的分号,要改为英文的,还有function(){在结束后少了“}”

最新回答 / H_action
只是告诉你这个用法,要是想设置刷新的话,就在方法中调用一个setTImeout函数,回调该方法

已采纳回答 / 吃饱了没事儿
%60是对60取余  获得60秒以内的秒数;比如80秒  该显示1:20  80%60==20;取后面的20秒

已采纳回答 / dphenkid
h=paserInt(lefttime/(60*60)%24);把小时取余的对象括起来就可以了

最赞回答 / 张元阳
因为视频中setTimeout是放在该函数内部的,并且引用的是该函数。即function a(){setTimeout(a,500)}。当函数执行时会触动setTimeout,从而在500毫秒后再次触发此函数。而下次执行该函数的时候又会触发。达到一种迭代的效果。

最新回答 / qq_Say_3
你的这个放在一开始的JS代码就好了

已采纳回答 / 范克森
个人感觉,如果是需要在页面加载过程中就要产生效果,调用到dom,js代码可以放在body中,跟在显示代码块儿后面(比如一些滚动显示、鼠标效果等等);如果都是后期需要调用的函数,放在head中即可(一般都是需要点击、敲击等事件触发的函数);

已采纳回答 / WTANG
var leftTme =Math.ceil((endTime.getTime() - currentTime.getTime() )/(24*60*60*1000));你定义出问题,应该是leftTime

已采纳回答 / wbp3164295
var timedate= new Date(2016,10,15);实参不应是字符串,它是三个不一样的参数

最新回答 / Albert小白
new Date()这个括号里不给他传入值他就是当前系统的事件,传入值,就是自定义时间

最赞回答 / 楠木楼林3812467
你这样想,我们要的是剩余多少天多少小时多少分多少秒,lefttime/24*60*60这个得出的是多少天,lefttime/(60*60)这个得出的是多少小时,但是这个小时是总的小时啊,而前面我们已经得出天数了,这里只需要得出除去天数后还有多少小时对吧,所以对24求余,得出除开天数后还剩多少小时显示在这里,后面分和秒也是同样的道理

最新回答 / 右下角_
为了防止客户端改时间作弊,所有提交的请求计时均以服务端为准,客户端计时只是给用户一个参考信息,for eyes only
课程须知
您至少具备HTML/CSS、JavaScript的基础知识
老师告诉你能学到什么?
1.学会使用日期对象Date和方法。2.学会不同时间内容的获取。3.学会计算时差的方法。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消