<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>倒计时制作</title>
<style>
.otime span{display:inline-block;padding: 10px 20px;background-color: #f4f4f4;opacity: 0.5;margin-left: 10px;color:#000;font-weight: bolder;}
</style>
</head>
<body>
<div class="text">
<p>
距离中秋还剩余:
<span id="time" class="otime"></span>
</p>
<p>
当前时间:
<span id="time1" class="otime"></span>
</p>
</div>
</body>
<script type="text/javascript">
//这个函数是为了适应格式 比如:01分01秒;
function p (n){
return n < 10 ? '0'+ n : n;
}
//这个函数是为了适应格式 比如:毫秒;
function m (m){
if(m<=10){
return '00'+m;
}else if(10<m&&m<100){
return '0'+m
}else if(100<m&&m<1000){
return m
}
}
oldTime ();
newTime ();
//倒计时函数
function newTime (){
//定义当前时间
// var startTime = new Date("2016/9/13 05:30:30");
var startTime = new Date ();
//定义结束时间
var endTime = new Date("2016/12/22 00:00:00"); //算出中间差并且已毫秒数返回; 除以1000将毫秒数转化成秒数方便运算;
var countDown = (endTime.getTime() - startTime.getTime())/1000; //获取天数 1天 = 24小时 1小时= 60分 1分 = 60秒
var oDay = parseInt(countDown/(24*60*60)); //获取小时数
//特别留意 %24 这是因为需要剔除掉整的天数;
var oHours = parseInt(countDown/(60*60)%24); //获取分钟数
//同理剔除掉分钟数
var oMinutes = parseInt(countDown/60%60); //获取秒数
//因为就是秒数 所以取得余数即可
var oSeconds = parseInt(countDown%60); //下面就是插入到页面事先准备容器即可;
var html = "<span>" + p(oDay) + "天</span>"+ "<span>" + p(oHours) + "时</span>" + "<span>" + p(oMinutes) + "分</span>" +"<span>" + p(oSeconds) + "秒</span>";
document.getElementById('time').innerHTML = html; //别忘记当时间为0的,要让其知道结束了;
if(countDown < 0){
document.getElementById('time').innerHTML = '中秋节活动已结束';
}
setTimeout ('newTime()', 200);
}
function oldTime (){
var oDate = new Date();
//获取年
var oFullyear = oDate.getFullYear();
//获取月份
var oMonth = oDate.getMonth()+1;
//获取日期
var oDta= oDate.getDate();
//获取星期
var oDay = oDate.getDay();
var week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
//获取小时
var oHours = oDate.getHours();
//获取分钟
var oMinutes = oDate.getMinutes();
//获取秒数
var oSeconds = oDate.getSeconds();
// 获取毫秒数
var omiao = oDate.getMilliseconds();
//插入到容器中
var b = "<span>"+ oFullyear +"年</span>" + "<span>"+ oMonth +"月</span>" + "<span>"+ oDta+"日</span>" + "<span>"+ week[oDay] +"</span>" + "<span>"+ p(oHours) +"时</span>" + "<span>"+ p(oMinutes) +"分</span>" + "<span>"+ p(oSeconds) +"秒</span>"+ "<span>"+m(omiao)+"毫秒</span>";
document.getElementById('time1').innerHTML = b;
// 定时器调用
setTimeout ('oldTime ()', 200); }
// 此方法定义data可以是new Data方法兼容ie8及以下浏览器
function parseISO8601(dateStringInRange) {
var isoExp = /^s*(d{4})-(dd)-(dd)s*$/,
date = new Date(NaN), month,
parts = isoExp.exec(dateStringInRange);
if(parts) {
month = +parts[2];
date.setFullYear(parts[1], month - 1, parts[3]);
if(month != date.getMonth() + 1) {
date.setTime(NaN);
}
}
return date;
}
</script>
</html>

倒计时js的更多相关文章

  1. 倒计时的js实现 倒计时 js Jquery

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=987 一.如火如荼的团 ...

  2. 团购、定时抢购倒计时js版

     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org ...

  3. 【积累】发送验证码按钮倒计时js

    注册的时候要发送验证码,就上网研究了一下,写了一个简单点的... jsp页面: <input type="button" id="testbtn" val ...

  4. 倒计时,js

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. 手机验证 发送验证码倒计时js

    html: <input name="Tel" class="weui-input" type="tel" placeholder=& ...

  6. 验证码倒计时js

    getVarify.js // 验证码计时--第一种 window.onload = function () { var send = document.getElementById('send'), ...

  7. 点击按钮出现60秒倒计时js代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 一个简单的倒计时js插件

    接收的参数end是必须传的,格式是/分隔的日期字符串,start是可选的,不传就是从现在开始倒计时,callback也是可选的,到倒计时接收时执行自定义的函数. countdown({ 'end':' ...

  9. 简单倒计时js代码

    //倒计时 var timer=null; var interval = 1000; function ShowCountDown(year,month,day,hour,minute,second, ...

随机推荐

  1. C# - 2017微软校园招聘笔试题 之 MS Recognition[待解决]

    MS Recognition 在线提交: hihoCoder 1402 http://hihocoder.com/problemset/problem/1402 类似: OpenJudge - I:P ...

  2. 重排序、hb、ConcurrentHashMap弱一致性(jdk1.6)

    double pi = 3.14; //A double r = 1.0; //B double area = pi * r * r; //C 1.A -> B    //不满足happens- ...

  3. Java虚拟机详解----JVM内存结构

    http://www.cnblogs.com/smyhvae/p/4748392.htm 主要内容如下: JVM启动流程 JVM基本结构 内存模型 编译和解释运行的概念 一.JVM启动流程: JVM启 ...

  4. Real Developer 应该参加的硬核竞赛来了!

    本文由云+社区发表 Labs Contest 竞赛简介 君君这次又来搞大事情啦,在 Function As A Service,Serverless,PaaS 大行其道的今天,你是否已经忘记了自己动手 ...

  5. Linux 文件权限于目录配置

    用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...

  6. 使用开源项目Alipay.AopSdk.Core完成支付宝网页登录

    核心方法: public IActionResult UserInfoCallBackAli() { var alipayClient = new DefaultAopClient(ConfigAli ...

  7. ASP.NET Core教程【二】从保存数据看Razor Page的特有属性与服务端验证

    前文索引:ASP.NET Core教程[一]关于Razor Page的知识 在layout.cshtml文件中,我们可以看到如下代码: <a asp-page="/Index" ...

  8. 痞子衡嵌入式:史上最强ARM Cortex-M学习资源汇总(持续更新中...)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M学习资源. 类别 资源 版本 短评 官方汇总 cortex-m-resources / ARM公司专家Josep ...

  9. .Net Core 实践 - 使用log4net记录日志(3)— log4net向ElasticSearch写日志

    demo地址:https://github.com/PuzzledAlien/log4net_demo/tree/master/DotNetCoreConsole_V3 Windows 10 安装部署 ...

  10. .net core mvc 区域路由设置(配置)

    写博客原因:添加了区域(用作后台)后,报错: An unhandled exception occurred while processing the request.AmbiguousActionE ...