JS实现时钟功能

时钟功能

功能描述

以前前段的JS代码有的是扒的,现在觉得也是人才啊,笑哭。今天简简单单用原生js写个时钟功能吧。

涉及知识
  • 闭包
  • 计时器setInterval(code,millisec[,”lang”])
代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>自制时钟</title>
</head>
<body>
<p id="demo">0</p>
<script>
var add = (function () {
    var sec = 56,min=0,h=0;
    return function () {
    if(sec==59){
        sec=-1;
        min+=1;
    }
        sec+=1;
        if(min==59){
        min=-1;
            h+=1;
        }
        if(h==23){
        h=-1;
        }
        var obj={
        "second":sec,
        "minute":min,
            "hour":h
        };
        return obj;}
})();
var plus =(function(){
    let cnt="hello world!",name="simon";
    return function(){ return cnt+=name;}
})();
function myFunction(){
    var obj=add();
    sec=obj.second;
    min=obj.minute;
    h=obj.hour;
    if(sec<10){
    p="0"+sec.toString();
    }
    else{
    p=sec.toString();
    }
    if(min<10){
    q="0"+min.toString();
    }
    else{
    q=min.toString();
    }
    if(h<10){
    r="0"+h.toString();
    }
    else{
    r=h.toString();
    }
    document.getElementById("demo").innerHTML = "当前时间:<span style='color:red'>"+r+":</span><span style='color:green'>"+q+":</span><span style='color:blue'>"+p+"</span>";
}
setInterval(myFunction,1000)
</script>
</body>
</html>
实现效果

image

在GIS的沙场,轻舞飞扬。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTML: ``` <div class="clock"> <div class="hour"></div> <div class="minute"></div> <div class="second"></div> </div> ``` CSS: ``` .clock { display: flex; justify-content: center; align-items: center; width: 200px; height: 200px; border-radius: 50%; background-color: #fff; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); } .hour, .minute, .second { position: absolute; top: 50%; transform: translateY(-50%); background-color: #333; } .hour { width: 50px; height: 8px; border-radius: 4px; transform-origin: left center; } .minute { width: 80px; height: 6px; border-radius: 3px; transform-origin: left center; } .second { width: 100px; height: 4px; border-radius: 2px; transform-origin: left center; } ``` JS: ``` function updateClock() { let now = new Date(); let hour = now.getHours() % 12; // 转换成12小时制 let minute = now.getMinutes(); let second = now.getSeconds(); // 计算时、分、秒针的旋转角度 let hourDeg = hour * 30 + minute * 0.5; // 每小时30度,每分钟0.5度 let minuteDeg = minute * 6; // 每分钟6度 let secondDeg = second * 6; // 每秒6度 // 更新时、分、秒针的角度 let hourEl = document.querySelector('.hour'); let minuteEl = document.querySelector('.minute'); let secondEl = document.querySelector('.second'); hourEl.style.transform = `rotate(${hourDeg}deg)`; minuteEl.style.transform = `rotate(${minuteDeg}deg)`; secondEl.style.transform = `rotate(${secondDeg}deg)`; } // 每秒更新一次时钟 setInterval(updateClock, 1000); ``` 可以在网页中嵌入上述代码后运行,即可实现一个简单的时钟功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值