建站强化“给网站添加一个活动倒计时效果

技巧达人 2022-10-17

1542 49

大部分以资源活动分享为主体的网站,经常会分享一些活动,是活动都有结束时间,刚好前段时间逛其他网站,看到对应活动有对应结束倒计时效果,活动结束后会提示活动已经结束,给用户体验是比较好的,所以也写了这个效果,分享给大家。

演示功能

如果活动没结束,那么显示距离结束时间,为绿色,如果到期了,那么显示 活动已经结束,为红色提示。将html代码span标签中的时间修改为到期时间,格式一定要正确,例如 2018-08-08 24:00:00 ,并放置需要显示的地方。将js代码,放置公共js中,或者其他只要引入的js文件中即可。

HTML代码

<span id="ActivityDate">2021-06-01 24:00:00</span>

javascript代码

<script>
    // 获取id
    var ActivityDate = document.getElementById("ActivityDate");
    function timepiece(key){
        var datatime = /^[d]{4}-[d]{1,2}-[d]{1,2}( [d]{1,2}:[d]{1,2}(:[d]{1,2})?)?$/ig,str='',s;
        // 正则验证日期格式是否正确
        if(!key.match(datatime)){
            console.log('日期参数错误,请按格式填写,如 1996-10-22 24:00:00');
            return
        }
        // 当前日期减去活动日期,判断是否超出
        var sec = (new Date(key.replace(/-/ig,'/')).getTime() - new Date().getTime())/1000;
        if(sec < 0){
            ActivityDate.innerHTML = "<span style=" + "color:red;" + ">" + "本活动已经结束" + "</span>";
            return
        }
        s = {
            '天':sec/24/3600,
            '时':sec/3600%24,
            '分':sec/60%60,
            '秒':sec%60
        }
        for(i in s){
            if(Math.floor(s[i]) > 0) str += Math.floor(s[i]) + i;
        }
        if(Math.floor(sec) == 0){
            str='0秒';
        }
        // 距离活动结束时间显示到页面
        ActivityDate.innerHTML = "<span style=" + "color:#4ad564;" + ">" + "本活动还有" + str + "结束" + "</span>";
        // 每隔1秒更新一次
        setTimeout(function(){
            timepiece(key)
        },1000)
    }
    timepiece(ActivityDate.innerHTML);
</script>
签名:这个人很懒,什么也没有留下!
最新回复 (49)
  • idrag 2022-10-7
    2
    看看
    签名:这个人很懒,什么也没有留下!
  • 法西斯 2022-10-10
    3
    签名:这个人很懒,什么也没有留下!
  • 啊啊啊 2022-10-13
    4
    看了楼主的贴,一顿能吃三大碗!
    签名:这个人很懒,什么也没有留下!
  • Ajanaunahn 2022-10-13
    5
    感谢有你
    签名:这个人很懒,什么也没有留下!
  • wylnb 2022-10-14
    6
    666,牛
    签名:这个人很懒,什么也没有留下!
  • 3232 2022-10-14
    7
    赞!
    签名:这个人很懒,什么也没有留下!
  • 2609034890 2022-10-14
    8
    大佬
    签名:这个人很懒,什么也没有留下!
  • 拉7月丿 2022-10-14
    9
    拿走看看
    签名:这个人很懒,什么也没有留下!
  • masai0923 2022-10-14
    10
    不错
    签名:这个人很懒,什么也没有留下!
  • 嘿嘿曼巴 2022-10-14
    11
    666,牛
    签名:这个人很懒,什么也没有留下!
  • 19871202t 2022-10-14
    12
    楼主牛
    签名:这个人很懒,什么也没有留下!
  • 上瘾 2022-10-14
    13
    签名:这个人很懒,什么也没有留下!
  • 326934144 2022-10-16
    14
    应该可以
    签名:这个人很懒,什么也没有留下!
  • 辰爸爸 2022-10-18
    15
    感谢有你
    签名:这个人很懒,什么也没有留下!
  • Malone 2022-10-20
    16
    666
    签名:这个人很懒,什么也没有留下!
  • joker 2022-10-20
    17
    谢谢大佬
    签名:这个人很懒,什么也没有留下!
  • ttt 2022-10-20
    18
    谢谢大佬
    签名:这个人很懒,什么也没有留下!
  • 1483696617 2022-10-20
    19
    试试
    签名:这个人很懒,什么也没有留下!
  • 9600138 2022-10-20
    20
    666,牛
    签名:这个人很懒,什么也没有留下!
返回