js-时钟效果+当前日期的前一天后一天表示

时钟效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .clock{
            width: 600px;
            height: 600px;
            margin:0 auto;
            background: url(images/clock.jpg) no-repeat;
            position: relative;
        }
        .clock div{
            width: 100%;
            height: 100%;
            position: absolute;
            left: 0;
            right: 0;
        }
        .clock div#hour{
            background: url(images/hour.png) no-repeat center center; //图片的中心在盒子的中心
        }
        .clock div#minute{
            background: url(images/minute.png) no-repeat center center; //图片的中心在盒子的中心
        }
        .clock div#second{
            background: url(images/second.png) no-repeat center center; //图片的中心在盒子的中心
        }
    </style>
    <script>    
    window.onload = function(){
        var hour = document.getElementById("hour");
        var minute = document.getElementById("minute");
        var second = document.getElementById("second");
        var s = 0,m = 0, h = 0, ms = 0;
        setInterval(function(){
            var date = new Date();
            ms = date.getMilliseconds();
            s = date.getSeconds() + ms/1000;
            m = date.getMinutes() + s/60;
            h = date.getHours() % 12 + m/60;
            //时钟一圈360°,一圈60秒,一秒走6°
            second.style.WebkitTransform = "rotate("+ s*6 +"deg)";
            minute.style.WebkitTransform = "rotate("+ m*6 +"deg)";
            hour.style.WebkitTransform = "rotate("+ h*30 +"deg)";

        },1000);
    }
    </script>
</head>
<body>
    <div class="clock">
        <div id="hour"></div>
        <div id="minute"></div>
        <div id="second"></div>
    </div>
</body>
</html> 

这里写图片描述

求当前日期的前一天、后一天

function getDate(addDay,fmt){
        // var curDate = new Date();
        var curDate = new Date("2016-12-31 06:8:3");
        if(addDay!=0){
            curDate.setTime(curDate.getTime() + 24*60*60*1000*addDay);
        }
        var fmt = fmt || "yyyy-MM-dd hh:mm:ss";
        return dateFormat(curDate,fmt);
    }

    function dateFormat(date,fmt){
        if(/(y+)/.test(fmt)){
            let str = date.getFullYear()+"";
            fmt = fmt.replace(RegExp.$1, str.substr(4-RegExp.$1.length));
        }
        var o = {
            'M+': date.getMonth()+1,
            'd+': date.getDate(),
            'h+': date.getHours(),
            'm+': date.getMinutes(),
            's+': date.getSeconds()
        }
        for(var k in o){
            let str = o[k]+"";
            if(new RegExp(`(${k})`).test(fmt)){
                fmt = fmt.replace(RegExp.$1,RegExp.$1.length===1?str:padLeftZero(str));
            }
        }
        return fmt;
    }
    function padLeftZero(str){
        return ("00"+str).slice(str.length);
    }
    //测试
    // console.log(dateFormat(new Date(),"yyyy-MM-dd hh:mm:ss"));
    console.log(getDate(1,'yy-M-d h:m:s'));
    console.log(getDate(-1));
    console.log(getDate(0));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值