<!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. .NET Core WebApi中实现多态数据绑定

    什么是多态数据绑定? 我们都知道在ASP.NET Core WebApi中数据绑定机制(Data Binding)负责绑定请求参数, 通常情况下大部分的数据绑定都能在默认的数据绑定器(Binder)中 ...

  2. 一个JavaWeb搭建的开源Blog系统,整合SSM框架

    搬砖有暇,捣鼓了一个简单的Blog系统(项目地址https://github.com/lenve/JavaEETest/tree/master/MyBlog),适合以下人群学习: 1.已经掌握了jsp ...

  3. Java基础7:关于Java类和包的那些事

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  4. Flink生成Parquet格式文件实战

    1.概述 在流数据应用场景中,往往会通过Flink消费Kafka中的数据,然后将这些数据进行结构化到HDFS上,再通过Hive加载这些文件供后续业务分析.今天笔者为大家分析如何使用Flink消费Kaf ...

  5. centos 7 linux系统安装 mysql5.7.17(glibc版)

    前言:经过一天半的折腾,终于把 mysql 5.7.17 版本安装上了 centos 7 系统上,把能参考的博客几乎都看了一遍,终于发现这些细节问题,然而翻了无数的文章,基本上都没有提到这些,所以小生 ...

  6. Django 系列博客(十六)

    Django 系列博客(十六) 前言 本篇博客介绍 Django 的 forms 组件. 基本属性介绍 创建 forms 类时,主要涉及到字段和插件,字段用于对用户请求数据的验证,插件用于自动生成 h ...

  7. [PHP] 适配器模式的日常使用

    适配器模式就是将一个类的接口方法转换成我希望用的另一个方法 , 下面是个常见的用处 class Session{ public $mc; public function __construct(){ ...

  8. redis分布式锁工具类

    目录 (1)需要导入的包 (2)JedisUtil类 (3)jedisPool配置 (4)使用举例 (1)需要导入的包 <dependency> <groupId>redis. ...

  9. Vim设置Tab宽度/替换Tab为空格

    用户配置: 在/home/you/.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格)set expandt ...

  10. 关于Android使用SFTP上传文件报错问题

    错误报告java.lang.NoClassDefFoundError:Failed resolution of: Lorg/ietf/jgss/Oid; 问题是由于 Lorg.ietf. jgss.O ...