JavaScript逻辑练习案例:实现倒计时和显示打开时间
2023-09-11 14:19:17 时间
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
span {
color: #f3c;
font-weight: 700;
font-size: 28px;
}
.red {
color: rgb(202, 18, 86);
font-weight: 700;
font-size: 32px;
}
</style>
</head>
<body>
<div id="showtime"></div>
<div id="djs"></div>
</body>
<script>
function fun() {
var oDiv = document.getElementById("showtime");
var mydate = new Date();
var yeAr = mydate.getFullYear(); // 年
var moNth = mydate.getMonth() + 1; // 月
var daTe = mydate.getDate(); //日
var d = mydate.getDay(); // 星期
var daY;
// 让阿拉伯数字变成大写的数字
switch (d) {
case 0:
daY = "日"
break;
case 1:
daY = "一"
break;
case 2:
daY = "二"
break;
case 3:
daY = "三"
break;
case 4:
daY = "四"
break;
case 5:
daY = "五"
break;
case 6:
daY = "六"
break;
}
//赋值 时 分 毫秒
var hoHrs = mydate.getHours();
var minuTes = mydate.getMinutes();
var miao = mydate.getSeconds();
var amPm = hoHrs >= 12 ? 'PM' : 'AM'; // 判断上下午
hoHrs = setNum(hoHrs);
minuTes = setNum(minuTes);
miao = setNum(miao);
function setNum(n) {
return n < 10 ? "0" + n : n;
}
var shiFenMiao = hoHrs + ":" + minuTes + ":" + miao + " " + amPm;
oDiv.innerHTML = (`<div class="box">今天是 <span>${yeAr}</span>年 <span>${moNth}</span>月 <span>${daTe}</span>日 星期<span>${daY}</span> <span>${shiFenMiao}</span>`);
}
fun()
setInterval(fun, 1000);
//求倒计时:
function miaoSha() {
var nowTime = new Date().getTime();
var futureTime = new Date('2022/10/1').getTime();
var factTime = (futureTime - nowTime) / 1000;
var day = parseInt(factTime / 86400);
var h = parseInt(factTime / 3600) - 24 * day;
var m = parseInt(factTime % 3600 / 60);
var s = parseInt(factTime % 60);
h = secNum(h);//时
m = secNum(m);//分
s = secNum(s);//秒
function secNum(n) {
return n < 10 ? "0" + n : n;
}
//djs.innerHTML = day + "天" + h + "小时" + m + "分" + s + "秒";
djs.innerHTML = `距离2022年10月1日还有 <span class="red">${day}</span>天 <span class="red">${h}</span>小时 <span class="red">${m}</span>分钟 <span class="red">${s}</span>秒`;
}
miaoSha();
setInterval(miaoSha, 1000);
</script>
</html>
运行结果
注意:
- 有颜色的字体是会动的,因为加了属性;
- 如果过了这个倒计时时间,会显示负数,因为没有设置
相关文章
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
- [ Javascript ] JavaScript中的定时器(Timer) 是怎样工作的!
- JavaScript 23. 使用误区
- 如何选择Javascript模板引擎(javascript template engine)?
- 【JavaScript】Javascript中的函数声明和函数表达式
- 【JavaScript】Understanding callback functions in Javascript
- 【達達前端】JavaScript Array 對象
- JavaScript基础系列
- 【Selenium核心技术篇】execute_script方法执行JavaScript操作页面滚动条
- JavaScript表单验证
- 《第三方JavaScript编程》——7.4 发布者漏洞
- 分享JavaScript小案例,打印倒正金字塔,两种方式实现
- 4个错误使用JavaScript数组方法的案例
- 【javascript】Javascript中"||"的妙用
- 【javascript】如何在Javascript中创造map对象?
- JavaScript经典案例之按下拖拽、跟随鼠标移动
- JavaScript之firstChild属性、lastChild属性、nodeValue属性学习
- javascript继承之借用构造函数(二)
- Emscripten教程之连接C++和JavaScript(三)