本文实例为大家解析了JS实现倒计时的详细过程,具体实现方法如…

示例代码简单易懂,nonatomic) IBOutlet UILabel,分享给大家供大家参考,本文实例讲述了JS实现的网页倒计时数字时钟效果,如需引入外部Js需刷新才能执行,parseInt() 函数可解析一个字符串,parseInt(string,如需引入外部Js需刷新才能执行

iOS中简易易懂秒杀倒计时/倒计时

身体力行代码简单易懂:

图片 1

#import 

@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);
        }
    }


}
效果:

图片 2

示例代码轻便易懂: #import @interface ViewController :
[email protected]
(weak, nonatomic) IBOutlet UILabel *dayLabel…

javascript贯彻数字倒计时特效,javascript倒计时

正文实例叙述了JS实现的网页倒计时数字时钟效果,分享给大家供我们参考,具体实现格局如下:

效果图:

图片 3

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>javascript实现的倒计时时钟</title>
<style>
body,div{margin:0;padding:0;}
body{color:#fff;font:16px/1.5 \5fae\8f6f\96c5\9ed1;}
#countdown{width:300px;text-align:center;background:#1a1a1a;margin:10px auto;padding:20px 0;}
input{border:0;width:283px;height:50px;cursor:pointer;margin-top:20px;backgroundnull:url(http://www.bkjia.com/jscss/demoimg/201210/btn-1.png) no-repeat;}
input.cancel{background-position:0 -50px;}
span{color:#000;width:80px;line-height:2;background:#fbfbfb;border:2px solid #b4b4b4;margin:0 10px;padding:0 10px;}
</style>
<script>
window.onload = function ()
{
var oCountDown = document.getElementById("countdown");
var aInput = oCountDown.getElementsByTagName("input")[0];
var timer = null;
aInput.onclick = function ()
{
this.className == "" ? (timer = setInterval(updateTime, 1000), updateTime()) : (clearInterval(timer));
this.className = this.className == '' ? "cancel" : '';
};
function format(a)
{
return a.toString().replace(/^(\d)$/,'0$1')
}
function updateTime ()
{
var aSpan = oCountDown.getElementsByTagName("span");
var oRemain = aSpan[0].innerHTML.replace(/^0/,'') * 60 + parseInt(aSpan[1].innerHTML.replace(/^0/,''));
if(oRemain <= 0)
{
clearInterval(timer);
return
}
oRemain--;
aSpan[0].innerHTML = format(parseInt(oRemain / 60));
oRemain %= 60;
aSpan[1].innerHTML = format(parseInt(oRemain));
}
}
</script>
</head>
<body>
<div id="countdown">
01分钟40秒
<input type="button" value="" />
</div>代码特效
</body>
</html>

如若感觉还不舒适大家能够参照此专项论题实行深远学习:js倒计时汇总

梦想本文所述对我们学习javascript程序设计具有援救。

html代码:

[Ctrl+A 全选
注:如需引进外界Js需刷新技艺进行]

你可能感兴趣的小说:

  • Javascript倒计时期码
  • js几秒今后倒计时跳转示例
  • js推断60秒以及倒计时示例代码
  • js网页实时倒计时正确到秒级
  • js达成网页倒计时、网址已运转时刻效率的代码3例
  • php+js完毕倒计时功效
  • 轻便易用的倒计时js代码
  • 一个准确的js html页面倒计时可准确到秒
  • JS倒计时代码汇总
  • js完成出殡和埋葬验证码后的倒计时作用

本文实例汇报了JS完毕的网页倒计时数字时钟效果,分享给我们供我们参谋,具体落到实处格局如…

你只怕感兴趣的稿子:

  • JS
    倒计时达成代码(时、分,秒)
  • JS完结倒计时(天数、时、分、秒)
  • js代码实现点击开关出现60秒倒计时
  • js几秒以往倒计时跳转示例
  • js达成点击获取验证码倒计时效果
  • Javascript落到实处商品秒杀倒计时(时间与服务器时间共同)
  • javascript秒数倒计时活动跳转代码
  • JS/jQ完成免费获得手机验证码倒计时效果
  • 团购、定时抢购倒计时js版
  • JS倒计时代码汇总
  • 原生JS落成简单的倒计时功用示例
<html>
<body>
<input type="text" value="" id="date2">
<input type="button" onclick="go(document.getElementById('date2').value);" value="开始">
<div id="timer"></div>
<script type="text/javascript">
 // 倒计时
 var _ordertimer = null;
 var data=new Date();
 document.getElementById("date2").value=data.getFullYear()+'-'+(data.getMonth()+1)+'-'+data.getDate()+' '+data.getHours()+':'+data.getMinutes()+':'+data.getSeconds();//当前时间
 function leftTimer(enddate) {
  var leftTime = (new Date(enddate)) - new Date(); //计算剩余的毫秒数
  var days = parseInt(leftTime / 1000 / 60 / 60 / 24, 10); //计算剩余的天数
  var hours = parseInt(leftTime / 1000 / 60 / 60 % 24, 10); //计算剩余的小时
  var minutes = parseInt(leftTime / 1000 / 60 % 60, 10);//计算剩余的分钟
  var seconds = parseInt(leftTime / 1000 % 60, 10);//计算剩余的秒数
  days = checkTime(days);
  hours = checkTime(hours);
  minutes = checkTime(minutes);
  seconds = checkTime(seconds);
  if (days >= 0 || hours >= 0 || minutes >= 0 || seconds >= 0) document.getElementById("timer").innerHTML = days + "天" + hours + "小时" + minutes + "分" + seconds + "秒";
  if (days <= 0 && hours <= 0 && minutes <= 0 && seconds <= 0) {
  window.clearInterval(_ordertimer);
  _ordertimer = null;
  }
 }
 function checkTime(i) { //将0-9的数字前面加上0,例1变为01
  if (i < 10) {
  i = "0" + i;
  }
  return i;
 }
 function go(v){
 var date1=new Date(),data2=new Date(v);
 if(data2<date1)return;//设置的时间小于现在时间退出
 _ordertimer = setInterval(function(){leftTimer(data2)}, 1000);
 }
 </script>
 </body>
 </html>

JS完毕倒计时(时、分,秒)

[Ctrl+A 全选
注:如需引进外界Js需刷新技能实践]

图片 4

您或然感兴趣的小说:

  • JS完毕倒计时(天数、时、分、秒)
  • js代码实现点击开关出现60秒倒计时
  • js几秒未来倒计时跳转示例
  • js完成点击获取验证码倒计时效果
  • Javascript兑现商品秒杀倒计时(时间与服务器时间共同)
  • javascript秒数倒计时活动跳转代码
  • JS/jQ实现免费获得手提式无线电话机验证码倒计时效果
  • js倒计时期码
  • 团购、定时抢购倒计时js版
  • JS倒计时期码汇总
  • 原生JS实现轻松的倒计时作用示例

本文实例为我们剖判了JS达成倒计时的详尽经过,供大家参照他事他说加以考察,具体内容如下

作者在笔者分享的篇章基础上再为我们整理一段完整的代码,拿去用啊!