top

实现距今天数和倒计时天数的JS代码

先看实现的效果

实现距今天数和倒计时天数的JS代码插图
实现距今天数和倒计时天数的JS代码

JS调用代码:

<script>
window.onload = function({
    var now = new Date();
    var reg = /^\s*([1-9]\d{3})\-(\d{1,2})\-(\d{1,2})\s*$/;
    var _start1 = document.getElementById("start1").innerHTML;
    var _end1 = document.getElementById("end1").innerHTML;
    if (
        !reg.test(_start1)
        ||
        !reg.test(_end1)
       ) 
    {
        throw new Error("Date Format Is Error !");
        return;
    }
    var start1 = new Date(_start1.replace(reg, "$1"), parseInt(_start1.replace(reg, "$2")) - 1, _start1.replace(reg, "$3"));
    var end1 = new Date(_end1.replace(reg, "$1"), parseInt(_end1.replace(reg, "$2")) - 1, _end1.replace(reg, "$3"));
    document.getElementById("start2").innerHTML = Math.floor((now - start1)/(1000*60*60*24));
    document.getElementById("end2").innerHTML = Math.round((end1 - now)/(1000*60*60*24));
}
</script>

HTML调用代码:

(开始时间) : <span id="start1">2018-08-27</span> 已使用<span id="start2">xx</span><br />
(到期时间) : <span id="end1">2018-10-26</span> 距到期<span id="end2">xx</span>

上面的代码可用,但是我发现了一个问题,如果单独想调用开始时间到期时间,效果就失效了。后经测试得知,如果需要开始时间,就删除JS代码里关于到期时间的代码,反之亦然。

如果只需要id="end2"到期的天数,而前面设置的id="end1"具体的时间隐藏的话,只需要给他一个display:none;样式即可。

THE END
icon
0
icon
打赏
icon
分享
icon
二维码
icon
海报
发表评论
评论列表

赶快来坐沙发