JavaScript利用Date实现简单的倒计时实例
介绍
Date对象,是操作日期和时间的对象。Date对象对日期和时间的操作只能通过方法。Date在js中和Array类似,都是拥有自己的特殊方法的特殊对象。
创建 Date 对象的语法:
var myDate=new Date() //Date 对象会自动把当前日期和时间保存为其初始值。
获取倒计时之前,我们不妨先来看怎样获取当前时间吧!!!
function time(){
var oDate = new Date();
var year = oDate.getFullYear();
var month = oDate.getMonth() + 1 ;
var dDate = oDate.getDate();
var day = oDate.getDay();
var house = oDate.getHours();
var minu = oDate.getMinutes();
var sec = oDate.getSeconds();
switch(day){
case 1:
day = '星期一';
break;
case 2:
day = '星期二';
break;
case 3:
day = '星期三';
break;
case 4:
day = '星期四';
break;
case 5:
day = '星期五';
break;
case 6:
day = '星期六';
break;
case 0:
day = '星期日';
break;
}
function double( t ){
if( t < 10 ){
t = '0' + t;
}
return t;
}
document.body.innerHTML = year + '年' + month +'月'+ dDate + '日 ' + day + ' ' + double(house) +':'+ double(minu) +':' + double(sec);
}
time();
setInterval(time,1000);
获取倒计时
1、实现倒计时功能
2、倒计时结束按钮可被点击,之前不可被点击
实例代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head> <body>
<div id="lastTime">
<span>0天 </span>
<span>00: </span>
<span>00: </span>
<span>00 </span>
</div>
<br /><br />
<style type="text/css">
#btn{
text-decoration: none;
display: block;
width: 100px;
height: 35px;
background: #ccc;
text-align: center;
line-height: 35px;
color: #666;
}
#btn.btn{
background: red;
color: #fff;
font-size: 20px;
font-weight: bold;
}
</style>
<a href="javascript:;" id="btn">即将开抢!</a>
<script type="text/javascript">
var oLt = document.getElementById("lastTime");
var oBtn = document.getElementById("btn");
time();
var timer = setInterval( time , 1000 );
function time(){
var endTime = new Date('2017/01/13 00:00:00');//结束日期不得在当前日期之前
var nowTime = new Date();
var splus = endTime.getTime() - nowTime.getTime();
//天 时 分 秒
if( splus <= 1 ){
clearInterval( timer );
oBtn.className = 'btn';
oBn.innerHTML = '开始秒杀!';
oBtn.href = 'http://www.baidu.com';
return;
}else{
oBtn.className = '';
}
var day = Math.floor( splus / 1000 / 60 / 60 / 24 );
var hours = Math.floor( splus / 1000 / 60 / 60 % 24 );
var min = Math.floor(splus / 1000 / 60 % 60);
var sec = Math.floor(splus / 1000 % 60);
oLt.innerHTML = day + '天 ' + double( hours ) + ':' + double( min ) + ':' + double( sec ); function double( n ){
if( n < 10 ){
n = '0' + n;
}
return n;
}
}
</script> </body>
</html>
学习网址:http://www.jb51.net/article/102817.htm
我的实例下篇文章引入:
JavaScript利用Date实现简单的倒计时实例的更多相关文章
- Python 利用Python编写简单网络爬虫实例3
利用Python编写简单网络爬虫实例3 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站“http://bbs.51testing. ...
- Python 利用Python编写简单网络爬虫实例2
利用Python编写简单网络爬虫实例2 by:授客 QQ:1033553122 实验环境 python版本:3.3.5(2.7下报错 实验目的 获取目标网站“http://www.51testing. ...
- 利用Java编写简单的WebService实例
使用Axis编写WebService比較简单,就我的理解,WebService的实现代码和编写Java代码事实上没有什么差别,主要是将哪些Java类公布为WebService. 以下是一个从编写測试样 ...
- 利用Java编写简单的WebService实例-转载
使用Axis编写WebService比较简单,就我的理解,WebService的实现代码和编写Java代码其实没有什么区别,主要是将哪些Java类发布为WebService.下面是一个从编写测试例子到 ...
- 用javascript来实现前端简单路由
WEB开发中路由概念并不陌生,我们接触到的有前端路由和后端路由.后端路由在很多框架中是一个重要的模块,如Thinkphp,Wordpress中都应用了路由功能,它能够让请求的url地址变得更简洁.同样 ...
- JavaScript学习笔记-简单的倒计时跳转页面
<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...
- javascript 的Date 格式化, 模仿shell中date命令的格式
原文:javascript 的Date 格式化, 模仿shell中date命令的格式 shell 中显示当前的日期 [root@localhost]$ date '+%Y-%m-%d %H:%M:%S ...
- 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二)(代码篇)
这篇是上一篇的延续: 用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 源代码在github上可以下载,地址:https://github.com/guoxia ...
- Qt5.9一个简单的多线程实例(类QThread)(第一种方法)
Qt开启多线程,主要用到类QThread.有两种方法,第一种用一个类继承QThread,然后重新改写虚函数run().当要开启新线程时,只需要实例该类,然后调用函数start(),就可以开启一条多线程 ...
随机推荐
- 设计模式学习总结(一)——设计原则与UML统一建模语言
一.概要 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经过分类的.代码设计经验的总结. 使用设计模式的目的:为了代码可重用性.让代码更容易被他人理解.保证代码可靠性. 设计 ...
- SQLite事务 SQLite插入多条语句为什么这么慢?.net (C#)
今天有个朋友测试 SQLite,然后得出的结论是:SQLite 效率太低,批量插入1000条记录,居然耗时 2 分钟!下面是他发给我的测试代码.我晕~~~~~~ using System.Data; ...
- 几种流行的AJAX框架对比:Jquery,Mootools,Dojo,ExtJs,Dwr
1:Jquery 主页:http://jquery.com/ 设计思想:简洁的方案思想,几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性). ...
- C# 两个独立exe程序直接通信
从别的地方转载过来,转载地址不详细,需要知道的话,可以自动去搜索,我不是原作者. 我之前主要是用工序内存做过两个进程的通信. 两个独立的exe程序之间如何完成通信呢?首先想到的办法是利用生成文件的方法 ...
- [日常] Go语言圣经--接口约定习题2
练习 7.3: 为在gopl.io/ch4/treesort (§4.4)的*tree类型实现一个String方法去展示tree类型的值序列. package main import( "f ...
- JavaSE Collections类 , Iterator迭代器 , 增强for循环
Collections 它是集合的工具类,为集合体系扩展了一些其他的方法.类中都是静态的方法,可以使用类名直接调用. 可变参数 在JDK1.5之后,如果我们定义一个方法需要接受多个参数,并且多个参数类 ...
- java工具类-接受请求参数,并利用反射调用方法
public String a(HttpServletRequest request,HttpServletResponse response) throws JSONException, IOExc ...
- MySQL常用操作汇编
熟悉 我熟悉xxx,其实很多原来熟悉到能背的,如果长时间不用了几乎也就忘了.此时再说自己熟悉XXX就被认为是在吹牛B了,感觉不是很好.所谓温故而知新,对于天资不聪颖的,就是要在一遍一遍的复习实践中慢慢 ...
- js字符串如何倒序
1. var reverse = function( str ){ var newStr = '', i = str.length; for(; i >= 0; i--) { newStr += ...
- 【代码笔记】iOS-将字符串中特定后的字变成红色
一,效果图. 二,代码. ViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup ...