倒计时 订阅
倒计时,从未来的某一时点计算时间,用来表示距离某一期限还有多少时间(多含剩余时间越来越少,越来越紧迫的意思)。 展开全文
倒计时,从未来的某一时点计算时间,用来表示距离某一期限还有多少时间(多含剩余时间越来越少,越来越紧迫的意思)。
信息
注    音
ㄉㄠˋ ㄐㄧˋ  ㄕㄧˊ
拼    音
dào jì shí
中文名
倒计时
倒计时来源
“倒计时”这一短语来源于1927年德国的幻想故事片《月球少女》,在这部影片中,导演弗里兹为了增加艺术效果,扣人心弦,在火箭发射的镜头里设计了“9、8、7、……3、2、1”点火的发射程序。这个程序得到火箭专家们的一致赞许,认为它十分准确清楚科学地突出火箭发射的时间越来越少,使人们产生火箭发射前的紧迫感。此后“倒计时”被普遍采用,而且超越了使用范围,成为一个适用性极强,适用范围极广的词语。
收起全文
精华内容
下载资源
问答
  • jquery/js实现一个网页同时调用多个倒计时(最新的)

    万次阅读 多人点赞 2015-11-25 15:24:27
    jquery/js实现一个网页同时调用多个倒计时(最新的) 最近需要网页添加多个倒计时. 查阅网络,基本上都是千遍一律的不好用. 自己按需写了个.希望对大家有用. 有用请赞一个哦! //js //js2 var plugJs={ stamp:0, ...

    jquery/js实现一个网页同时调用多个倒计时(最新的)

    最近需要网页添加多个倒计时. 查阅网络,基本上都是千遍一律的不好用. 自己按需写了个.希望对大家有用. 有用请赞一个哦!

    //js

    //js2
    var plugJs={
        stamp:0,
        tid:1,
        stampnow:Date.parse(new Date())/1000,//统一开始时间戳
        intervalTime:function(){
            if(plugJs.stamp > 0){
                var day = Math.floor(plugJs.stamp / (60 * 60 * 24));
                var hour = Math.floor(plugJs.stamp / (60 * 60)) - (day * 24);
                var minute = Math.floor(plugJs.stamp / 60) - (day * 24 * 60) - (hour * 60);
                var second = Math.floor(plugJs.stamp) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
                
                if (day <= 9) day = '0' + day;
                if (hour <= 9) hour = '0' + hour;
                if (minute <= 9) minute = '0' + minute;
                if (second <= 9) second = '0' + second;
                jQuery('.t_h_'+plugJs.tid).html(hour);
                jQuery('.t_m_'+plugJs.tid).html(minute);
                jQuery('.t_s_'+plugJs.tid).html(second);
                plugJs.stamp--;
                setTimeout('if(typeof(plugJs.intervalTime) == "function"){plugJs.intervalTime();}',1000);
            }
        },
        timer:function (stampend,tid){
            plugJs.stamp = parseInt(stampend)-parseInt(plugJs.stampnow);//剩余时间戳
            plugJs.tid = tid;
            setTimeout('if(typeof(plugJs.intervalTime) == "function"){plugJs.intervalTime();}',1000);
        }
    };
    jQuery(document).ready(function(){
        var stampend = parseInt(jQuery('.countdown_1').attr('data-time'));//灵活读取表里的结束时间戳
        plugJs.timer(stampend,'1');
    });

     


    //html 原文http://blog.csdn.net/websites/article/details/50037611

     

    <div class="time countdown_1" data-time="1449429731">
        <span class="t_h_1">00</span>
        <i class="lay_line">:</i>
        <span class="t_m_1">00</span>
        <i class="lay_line">:</i>
        <span class="t_s_1">00</span>
    </div>
    <div class="time countdown_2" data-time="1449456731">
        <span class="t_h_2">00</span>
        <i class="lay_line">:</i>
        <span class="t_m_2">00</span>
        <i class="lay_line">:</i>
        <span class="t_s_2">00</span>
    
    </div>

     

    注释:setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

     

     

     

     

     

    展开全文
  • 先看效果图!...先看单个倒计时: 代码: <div class="titRight"> <div class="top"> <p>{{detailsListDetails.cate1_name1}}</p> <p>还有{{detailsListDetail...

    先看效果图!代码分别在下面展示

    先看单个倒计时:

    代码:

    <div class="titRight">
            <div class="top">
              <p>{{detailsListDetails.cate1_name1}}</p>
              <p>还有{{detailsListDetails.project_number4}}头未有人预约计划</p>
            </div>
            <div class="bottom" v-if="ifCountDown==0">
              <p>您还有</p>
              <p style="font-size: 22px;">{{CountDown}}</p>
              <p>可以预约计划</p>
            </div>
            <div class="bottom" v-if="ifCountDown!=0">
              <p>抱歉</p>
              <p style="font-size: 22px;">预约已截止</p>
            </div>
    </div>
    export default {
        name: "verShops",
        data() {
          return {
            user_collect_type:"",//收藏
            token_centent:JSON.parse(sessionStorage.getItem("loginInformation")),//token
            status_type:"",//预约状态
            status_message1:"",//预约显示的文字
            CountDown:"",//单倒计时
            ifCountDown:0,
          }
        },
    methods: {
        initList(){
            var that=this;
            api.post("/api/sssss/sssssss/", {//服务详情
              source:1,
              token:that.token_centent.token,//Token
              uuid:that.businessUuid,//UUID
            })
            .then(function(res) {
              if(res.data.code==1000){
                that.detailsListDetails=res.data.data
                that.value5=parseInt(res.data.data.user_star)
                that.chaturl=res.data.data.user_chat1
                that.user_collect_type=res.data.data.user_collect
                that.status_type=res.data.data.status
                that.status_message1=res.data.data.message1
                that.Djs_time();//获取数据后调用单个的倒计时
                setTimeout(that.Djs_timeList, 1000);//倒计时列表,多个
              }
            });
        },
        Djs_time: function(){
            setInterval( ()=> {
              var Deadline=new Date(this.detailsListDetails.project_time3_str).getTime();
              var presentTime=new Date().getTime();
              var rightTime = Deadline - presentTime;
              if (rightTime > 0) {
                var dd = Math.floor(rightTime / 1000 / 60 / 60 / 24);
                var hh = Math.floor((rightTime / 1000 / 60 / 60) % 24);
                var mm = Math.floor((rightTime / 1000 / 60) % 60);
                var ss = Math.floor((rightTime / 1000) % 60);
                this.CountDown= dd + "天" + hh + "小时" + mm + "分" + ss + "秒"
                this.ifCountDown=0
              }else{
                this.CountDown="已到截止申请时间"
                this.status_type=7
                this.status_message1="预约已结束"
                this.ifCountDown=1
              }
            }, 1000);
          },

    CountDown  就是最终要在页面上显示的数据!

    单个倒计时思路如下:

    获取倒计时的截止时间,再获取现在的时间,截止时间戳减去现在的时间戳 如果大于0 就执行 计算结果 

    最终拼字符串形式获得数据,渲染页面上即可!

    多个倒计时(列表倒计时)

    <p v-show="false">{{CountDown}}</p>   //辅助倒计时用于刷新
    
    <div class="list" v-for="(item,index) in MerchantDemandList" :key="index">
        <div class="listPush">
              <div v-show="item.status==1">{{item.message1}}</div>
              <div v-show="item.status==1">
                {{Djs_timeList(item.project_time3_str)}}
                
                <!-- {{item.project_time3_str}} -->
              </div>
              <div v-show="item.status!=1">{{item.message1}}</div>
        </div>
    </div>

    {{Djs_timeList(item.project_time3_str)}}   for循环下面的 item里的project_time3_str就是传递的截止时间。方法Djs_timeList()

    data() {
          return {
            token_centent:JSON.parse(sessionStorage.getItem("loginInformation")),//token
            status_type:"",//预约状态
            status_message1:"",//预约显示的文字
            ifCountDown:0,
            CountDown:"",//辅助倒计时用于刷新
     
          }
        },
    methods: {
        initList(){
            var that=this;
            api.post("/api/sssss/sssssss/", {//服务详情
              source:1,
              token:that.token_centent.token,//Token
              uuid:that.businessUuid,//UUID
            })
            .then(function(res) {
              if(res.data.code==1000){
                that.Djs_time();//辅助列表倒计时
                that.status_message1=res.data.data.message1
                that.Djs_time();//获取数据后调用单个的倒计时
                setTimeout(that.Djs_timeList, 1000);//倒计时列表,多个
                  
              }
            });
        },
        Djs_time: function(){
            setInterval( ()=> {
              var presentTime=new Date().getTime();
              this.CountDown=presentTime
            }, 1000);
          },
        Djs_timeList:function(itemEnd){
            var endItem=new Date(itemEnd).getTime();//获取列表传的截止时间
            var nowItem=new Date().getTime();//获取当前时间
            var rightTime = endItem - nowItem;//截止时间减去当前时间
            if (rightTime > 0) {//判断剩余倒计时时间如果大于0就执行倒计时否则就结束
              var dd = Math.floor(rightTime / 1000 / 60 / 60 / 24);
              var hh = Math.floor((rightTime / 1000 / 60 / 60) % 24);
              var mm = Math.floor((rightTime / 1000 / 60) % 60);
              var ss = Math.floor((rightTime / 1000) % 60);
              var showTime= dd + "天" + hh + "小时" + mm + "分" + ss + "秒"
              // this.MerchantDemandList.status=1
            }else{
              var showTime= "预约已结束"
              // this.MerchantDemandList.status=0
            }
            return showTime
          }
    },
    mounted(){
      this.initList();
    },
    //离开页面后清除定时器
    destroyed () {
      clearInterval()
    }

    多个倒计时思路:

    setTimeout(that.Djs_timeList, 1000) 在数据获取完成后 加定时器 每1秒执行 调用页面上所有的Djs_timeList() 这个方法

    后台正常for循环渲染数据,获取截止时间item.project_time3_str   从Djs_timeList() 这个方法传递截止时间

    Djs_timeList()方法里 获取传递的截止时间,截止时间减去现在的时间就是剩余的时间,计算拼字符串,

    return 最终结果 返回到页面展示 {{Djs_timeList(item.project_time3_str)}}

    结尾

    因为这个比较好理解,还是在渲染页面时for循环里直接传递参数去执行的!个人感觉比网上看的其他方法要单独提取个数组要方便多了!且我这里是用的分页,数据比较多!数量不确定,这个好理解

     

    3月26 补充:

    跳转其他路由后 销毁定时器  加在 destroyed 里个清除即可

    mounted(){
          this.initList();
          
    },
    //离开页面后清除定时器
    destroyed () {
          clearInterval()
    },

     

    更多技巧请查看vue专栏   https://blog.csdn.net/qq_42221334/column/info/27230/1

     

    展开全文
  • 倒计时清除 setInterval 倒计时5s后跳转页面, clearInterval(this.handler); 清除倒计时 不执行倒计时里面的跳转, 点击事件强制跳转到其他页面 并且清除 倒计时任务 // 倒计时 cutDown() { this....

    倒计时清除 setInterval

    • 倒计时5s后跳转页面, clearInterval(this.handler); 清除倒计时

    • 不执行倒计时里面的跳转, 点击事件强制跳转到其他页面 并且清除 倒计时任务

      // 倒计时
        cutDown() {
              this.handler = setInterval(() => {
            // 路由跳转后 倒计时没有清理 在点击跳转时清除定时器
            this.second--;
            if (this.second == 0) {
              clearInterval(this.handler);  // 跳转成功后 清除 倒计时
              this.detailsSkipFn();  // 执行跳转页面
            }
          }, 1000);
        
        },
    

    不执行倒计时里面的跳转 点击事件强制跳转到其他页面 并且清除 倒计时任务

     indexFn() {
          this.$router.replace({  强制跳转路由
            name: "site",
            params: { site: this.shortUrl },
          });
            clearInterval(this.handler); // 清除定时器
    
        },
    
    展开全文
  • iOS中 简单易懂的秒杀倒计时倒计时 商城类APP常用的秒杀倒计时 /iOS倒计时

    示例代码简单易懂:

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博

    #import <UIKit/UIKit.h>
    
    @interface ViewController : UIViewController
    
    @property (weak, nonatomic) IBOutlet UILabel *dayLabel;
    @property (weak, nonatomic) IBOutlet UILabel *hourLabel;
    @property (weak, nonatomic) IBOutlet UILabel *minuteLabel;
    @property (weak, nonatomic) IBOutlet UILabel *secondLabel;
    
    @end


    #import "ViewController.h"
    
    @interface ViewController ()
    {
         dispatch_source_t _timer;
    }
    @end
    
    @implementation ViewController
    /**
     *  获取当天的年月日的字符串
     *  这里测试用
     *  @return 格式为年-月-日
     */
    -(NSString *)getyyyymmdd{
        NSDate *now = [NSDate date];
        NSDateFormatter *formatDay = [[NSDateFormatter alloc] init];
        formatDay.dateFormat = @"yyyy-MM-dd";
        NSString *dayStr = [formatDay stringFromDate:now];
        
        return dayStr;
        
    }
    - (void)viewDidLoad {
        [super viewDidLoad];
        NSDateFormatter *dateFormatter=[[NSDateFormatter alloc] init];
        [dateFormatter setDateFormat:@"yyyy-MM-dd"];
        
        NSDate *endDate = [dateFormatter dateFromString:[self getyyyymmdd]];
        NSDate *endDate_tomorrow = [[NSDate alloc] initWithTimeIntervalSinceReferenceDate:([endDate timeIntervalSinceReferenceDate] + 24*3600)];
        NSDate *startDate = [NSDate date];
        NSTimeInterval timeInterval =[endDate_tomorrow timeIntervalSinceDate:startDate];
        
        if (_timer==nil) {
            __block int timeout = timeInterval; //倒计时时间
            
            if (timeout!=0) {
                dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
                _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue);
                dispatch_source_set_timer(_timer,dispatch_walltime(NULL, 0),1.0*NSEC_PER_SEC, 0); //每秒执行
                dispatch_source_set_event_handler(_timer, ^{
                    if(timeout<=0){ //倒计时结束,关闭
                        dispatch_source_cancel(_timer);
                        _timer = nil;
                        dispatch_async(dispatch_get_main_queue(), ^{
                            self.dayLabel.text = @"";
                            self.hourLabel.text = @"00";
                            self.minuteLabel.text = @"00";
                            self.secondLabel.text = @"00";
                        });
                    }else{
                        int days = (int)(timeout/(3600*24));
                        if (days==0) {
                            self.dayLabel.text = @"";
                        }
                        int hours = (int)((timeout-days*24*3600)/3600);
                        int minute = (int)(timeout-days*24*3600-hours*3600)/60;
                        int second = timeout-days*24*3600-hours*3600-minute*60;
                        dispatch_async(dispatch_get_main_queue(), ^{
                            if (days==0) {
                                self.dayLabel.text = @"0天";
                            }else{
                                self.dayLabel.text = [NSString stringWithFormat:@"%d天",days];
                            }
                            if (hours<10) {
                                self.hourLabel.text = [NSString stringWithFormat:@"0%d",hours];
                            }else{
                                self.hourLabel.text = [NSString stringWithFormat:@"%d",hours];
                            }
                            if (minute<10) {
                                self.minuteLabel.text = [NSString stringWithFormat:@"0%d",minute];
                            }else{
                                self.minuteLabel.text = [NSString stringWithFormat:@"%d",minute];
                            }
                            if (second<10) {
                                self.secondLabel.text = [NSString stringWithFormat:@"0%d",second];
                            }else{
                                self.secondLabel.text = [NSString stringWithFormat:@"%d",second];
                            }
                            
                        });
                        timeout--;
                    }
                });
                dispatch_resume(_timer);
            }
        }
    
    
    }
    
    
    每日更新关注:http://weibo.com/hanjunqiang  新浪微博

    效果:


     
                      iOS开发者交流群:446310206

    Demo下载地址GitHubhttps://github.com/XiaoHanGe/CountDown

    展开全文
  • 倒计时6小时

    千次阅读 2017-04-24 17:14:21
    倒计时
  • 移动端倒计时显示NaN,以及倒计时

    千次阅读 2017-06-16 12:09:59
    NaN解决方法 倒计时
  • JS 倒计时

    千次阅读 2018-03-24 14:25:06
    本文有3个倒计时功能的Demo:  1.时间戳转换成时间格式倒计时  2.倒计时60秒  3.时间格式的数据直接开始倒计时   直接上代码了: 1.时间戳转换成时间格式倒计时 &lt;text&gt;{{hhh}}:{{mmm}}:{{...
  • * 用在获取短信验证码倒计时使用 */ public class SMSCodeUtil{ private TimerUtil tUtil; private int time;//倒计时时间 private int past_time;//已经过去了的时间 private int leave_time;//剩余的时间 ...
  • 前言:有时候,在项目中,我们经常需要设置简单的倒计时功能,这个可以通过定时器来实现。 一、设置div显示倒计时数字 <div class="countCircle"> <span>{{countdown}}</span> </div> ...
  • 首先实现倒计时功能,以登录界面为例,用户输入手机号以后,需要点击按钮发送验证码,发送验证码成功以后,会调用下面方法,实现按钮倒计时功能 - (void)timerCountDownWithType:(BOUCountDownType)countDo...
  • html> lang="en"> charset="UTF-8"> 倒计时 class="title_1"> id="text_1" type="text" name="textss" value="查看条款(30)"placeholder="请在这里输入标题"/>
  •  在前端开发中,难免会用到倒计时。如做的双十一活动,在距活动开始的半个月前需要做些宣传工作,需要告知用户优惠活动什么时候开始。这个时候就要用到倒计时,如在整站的某个页面提醒用户活动什么时候开始等。而在...
  • 实现秒表倒计时+缓存倒计时功能 &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;&lt;/title&gt; &...
  • 用js计时器写倒计时

    千次阅读 2019-06-15 17:20:38
    用js计时器写倒计时倒计时的思路:1,设置要到的时间。2,获取当前时间。3,计算时,分,秒,毫秒的时间差,4,用计时器把整个倒计时函数包装起来 1,倒计时内容部分 var timego=new Date("2019-5-29 12:00:00...
  • 链接有完整代码,想让里面的倒计时模块随着新游戏开始重新计时,改如何更改。[](https://gitee.com/whos_a_white_coat_is_a_teenager/maze_game "")
  • 第一步:现在场景中 放一个 label 取个名字叫: daojishi ;...(倒计时5秒) 第三步:如图 以下是代码: //脚本名字为:Daojishi cc.Class({ extends: cc.Component, properties: { time: cc.Label, d...
  • jQuery实现倒计时计时器

    千次阅读 2017-09-19 10:55:47
    本文转载自 jquery 做一个小的倒计时效果 在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。 jquery倒计时实现 .shop_list ul li{ display: inline-block;...
  • 微信小程序 倒计时 下载

    热门讨论 2017-01-10 00:21:42
    微信小程序 倒计时
  • Java倒计时

    千次阅读 2019-05-08 18:27:48
    利用Java的基础知识制作一个给定时间的倒计时器,实际用处是可以用来到计时,当作秒表使用。代码入如下图: 首先设置好时间的设定好时间长度1分钟等于60秒,60分钟等于1小时,然后写一个时间的方法,给定好时间多少...
  • 读秒倒计时

    千次阅读 2019-02-25 10:14:13
    读秒倒计时 html: &lt;div id="countDown"&gt;&lt;/div&gt; js: if (!window.Util) { window.Util = {}; } $.extend(Util, { /** * 读秒倒计时 * @param K:秒数,id:容器id * @...
  • 今天更新了一个App,打开这个App后弹出的页面是一个广告倒计时的页面,倒计时完毕后进入主界面。于是我闲着没事儿简易实现了一下这个功能,如图: 实现这个效果也很容易,在相应布局问下中添加TextView控件,...
  • js案例 小米秒杀倒计时 新年倒计时

    千次阅读 2020-08-01 19:06:10
    小米秒杀倒计时设计方案 源代码如下 ** 首先设计一个整体的框架 即css内容(调好合适边框 等) css样式如下 <div class="box"> <h3 class="start">14:00 场</h3> <div class="photo"> &...
  • 倒计时程序

    千次阅读 2018-12-25 13:48:16
    倒计时程序的设计 /*对于一个数字倒计时的设计 * 问题描述:在日常工作中经常见到倒计时的设计,那么,如何设计倒计时呢? * 给出一个数字,每隔一秒减一,直到减成0为止,并且,数字应该在窗体中显示, * ...
  • Android 抢购类倒计时实现, 代码里有注释,实现起来简单。android实现倒计时,最简单实现RecyclerView倒计时+SwipeRefreshLayout下拉刷新
  • 15秒的倒计时和15分钟的倒计时

    千次阅读 2017-04-07 15:31:39
    描述:15秒的倒计时 --> 00: 15: 00 作者:offline 时间:2017-04-04 描述:15分钟的倒计时 --> 15: 00: 00 $(function(){ var i=14; var m=99; setInterval(function(){ if(i>=0){
  • CountdownView倒计时

    千次阅读 2017-03-13 08:51:00
    CountdownView是Android中第三方的倒计时秒杀控件,在商城购物相关软件秒杀和倒计时中经常用 到,它可以在ListView和RecyclerView中显示秒杀倒计时,滑动时候并且时间不会错乱,且性能良好 二、常用布局文件和样式...
  • 遍历数组,倒计时,处理数组时间戳,日期倒计时显示 这个不是我自己悟出来的,是在网上找的,当时想记录一下忘了,后来想再找,找不着了,我就在项目里面提取出来了, 他写的很简洁,我就直接拿过来 场景: ~~ 要...
  • 安卓倒计时按钮TimeButton

    千次下载 热门讨论 2015-02-06 13:25:17
    获取验证码时候的倒计时按钮http://blog.csdn.net/yung7086/article/details/43563033
  • 多个倒计时并行(拼团倒计时)

    千次阅读 2018-07-23 14:26:32
    本文是对类似于拼团,多个商品每个都有各自的倒计时,一开始接到接到这个需求也是头疼了一阵子,如果是在商品列表少的时候完全就可以写成死的,固定的变量,写几个定时器就ok了, 但是这次数据是活的,看一些拼团...
  • 功能:实现倒计时功能,可用于购物界面的活动倒计时 ''' import datetime day20 = datetime.datetime.strptime('2019-02-08 0:0:0','%Y-%m-%d %H:%M:%S') now = datetime.datetime.today() delta = day20 - now day ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 91,017
精华内容 36,406
关键字:

倒计时