显示时间与倒计时

HTML

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>显示系统时间</title>
<link rel="stylesheet" href="css/style.css">
</head> <body>
<div id="container">
<h2>当前时间为:</h2>
<h3 id="current">显示当前时间时间</h3>
<h2>距离2017年1月1日还有:</h2>
<h3 id="deadline">显示倒计时</h3>
</div>
<script src="js/script.js"></script>
</body>
</html>

CSS

 #container {
width:300px;
margin:50px auto;
} #container h3:nth-of-type(1) {
color:cyan;
margin-bottom:50px;
} #container h3:nth-of-type(2) {
color:red;
height:50px;
line-height:50px;
font-size:24px;
}

JavaScript

 window.onload = function() {
showCurrentTime();
showEndTime();
}; function checkTime(i) {
if(i < 10) {
i = "0" + i;
}
return i;
} function showCurrentTime() {
var now = new Date();
var year = now.getFullYear();
var month = now.getMonth() + 1;
var day = now.getDate();
var d = now.getDay();
var hour = now.getHours();
var min = now.getMinutes();
var sec = now.getSeconds(); hour = checkTime(hour);
min = checkTime(min);
sec = checkTime(sec); var weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]; var show = document.getElementById("current");
var time = year + "年" + month + "月" + day + "日 " + weekday[d] + " " + hour + ":" + min + ":" + sec;
show.innerHTML = time;
//将setTimeout写在showTime内部,这是一个递归调用
setTimeout(showCurrentTime, 1000);
}; //如果要将时间更新写在showTime外部,则需要setInterval方法
// setInterval(showTime, 1000); function showEndTime() {
var now = new Date();
var deadline = new Date(2017, 0, 1);
var left_time = parseInt((deadline.getTime() - now.getTime()) / 1000);
var day = parseInt(left_time / (60 * 60 * 24));
var hour = parseInt(left_time / (60 * 60) % 24);
var min = parseInt(left_time / 60 % 60);
var sec = parseInt(left_time & 60); day = checkTime(day);
hour = checkTime(hour);
min = checkTime(min);
sec = checkTime(sec); var time = day + "天 " + hour + "时 " + min + "分 " + sec + "秒";
var show = document.getElementById("deadline"); if(left_time < -60*60*24) {
show.innerHTML = "时间已过!"
} else if(left_time < 0) {
show.innerHTML = "就是今天!"
} else {
show.innerHTML = time;
}
setTimeout(showEndTime, 1000);
}

此demo倒计时每4秒更新一次,也是醉了。。。

JS 显示时间与倒计时练习的更多相关文章

  1. js显示时间

    function nowTime(){ var data= new Date(); var y=data.getFullYear(); var m=parseInt(data.getMonth())+ ...

  2. js图片时间和倒计时

    图片时间原理        原理:使用定时器每秒获取时间,获取时间的时,分,秒,组成一个6位数的字符串,然后用charAt,截取出对应的字符,图片命名和数字相对应就ok拉 倒计时原理        原 ...

  3. 页面显示时间js

    //页面显示时间 <span align="left" id="OperatorTime"> </span> <script> ...

  4. js显示当前时间

    闲着没事在闪存里看到有人需要js显示当前时间,就一时兴起写了个. 输出格式:“2013年12月18日 星期三 上午9:05:00 ”. <script type="text/javas ...

  5. 原生js 当前时间 倒计时代码

    源:https://www.oschina.net/code/snippet_2318153_54763 <!DOCTYPE html> <html> <head> ...

  6. 帮助更语义化的显示时间的jQuery插件 - tidyTime.js

    来源:GBin1.com 网站或者web应用开发过程中,难免会遇到需要展示时间的地方,例如,留言时间或者发布帖子的时候,那么大家是不是相关过使用更加符合语义学的方式来显示时间呢? 08:15  显示成 ...

  7. Js Jquery 时间控件显示小时 分钟 秒

    // ui.js 自带的datepicker 插件只能显示日期不能显示时分秒  使用dateTimePicker可以显示时间 效果图:     首先需要引用 js和css 注意 ui.js的顺序要在s ...

  8. 纯css+js水平时间轴

    自定义,并自动加载时间节点 当前时间节点居中,突出显示 时间动态无痕添加 效果图: 初始状态 时间左走到一定2016.1月后 html: <!-- 水平时间轴 --> <div id ...

  9. JS日期时间选择器

    本文介绍一种日期和时间选择器的使用方法.此选择器由jqueryUI实现,支持精确到毫秒的时间选择. 此选择器项目地址为http://trentrichardson.com/examples/timep ...

随机推荐

  1. Linux Shell编程一

    交互模式 --当Shell收到用户输入命令后,就开始执行这项命令,并把结果显示到屏幕上,结束后Shell又会显示系统提示符,等待用户输入下一条命令. 后台运行 --后台运行的符号为"& ...

  2. Linux 进程与线程一(创建-关闭线程)

    进程是一个实体.每一个进程都有他自己的内存地址段(heap,stack等等) 进程是执行中的程序. 程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个活动的实体. 进程是操作系统中最基 ...

  3. C语言 字符串操作两头堵模型

    //字符串操作两头堵模型练习 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #inc ...

  4. 使用POI getCell 获取空的单元格之后在使用的时候报 NullPointerException

    解决办法,在得到cell之后先判断cell是否为空,然后再进行逻辑处理. 得到的cell建议使用去除策略(如左对齐,居中等)的cell,不然有可能受到策略影响而导致结果异常. org.apache.p ...

  5. gethostbyname 亲测可用

    建立Socket链接的时候需要IP地址,但是只有域名怎么办,gethostbyname就是一个将域名转换为IP的函数: #include <netdb.h> struct hostent ...

  6. 验证视图状态 MAC 失败的解决办法

    昨天用户反应系统中有问题,问题就在于翻页的时候,系统会报以下错误.但是我们的系统已经上线1年多了,从来没出现过错误,怎么会出现错误呢?于是开始检测,查找原因. 1. 出错提示 “/”应用程序中的服务器 ...

  7. python 线性回归示例

    说明:此文的第一部分参考了这里 用python进行线性回归分析非常方便,有现成的库可以使用比如:numpy.linalog.lstsq例子.scipy.stats.linregress例子.panda ...

  8. [原创]JavaScript继承详解

    原文链接:http://www.cnblogs.com/sanshi/archive/2009/07/08/1519036.html 面向对象与基于对象 几乎每个开发人员都有面向对象语言(比如C++. ...

  9. 错误C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型

    第一种方法: AfxMessageBox( "Simple   message   box. ");如果先定义一个CString   变量,再赋值就没问题CString   sTe ...

  10. PRML读书会第一章 Introduction(机器学习基本概念、学习理论、模型选择、维灾等)

    主讲人 常象宇 大家好,我是likrain,本来我和网神说的是我可以作为机动,大家不想讲哪里我可以试试,结果大家不想讲第一章.估计都是大神觉得第一章比较简单,所以就由我来吧.我的背景是统计与数学,稍懂 ...