如今JavaScript在前端开发中的地位越来越高,掌握JavaScript的深度往往能决定你职业道路深远,这次通过制作 带着倒计时功能的激励日历的小实例,进一步细致的掌握JavaScript的语法与用法。

 结构剖析:

             

<!DOCTYPE html>
<html>
<meta charset="utf-8" author="DylanZZZ">
<head>
<title>倒计时日历</title>
<link rel="stylesheet" type="text/css" href="css/timer.css">
</head>
<body>
<div class="calendar">
<p id="fulldate"></p>
<span id="nowdate"></span>
<strong id="hllo"></strong>
<span><font color="#C5FFFD">----- 今日剩余时光 -----</font></span>
<div id="time"></div>
</div>
<script src="js/timer.js"></script>
</body>
</html>

 CSS部分:

.calendar {

    width: 300px; height: 360px; margin: 100px auto;
background-color: #3CC9FC; text-align: center;
color: #C1DBF5;
border-radius: 40px ;
animation: calendar 4s linear infinite; /*这里的动画属性参见CSS3(水纹波动)的文章*/ }
/*扩散渐变动画*/
@keyframes calendar {
% { box-shadow: rgba(, , , ), rgba(, , , );
}
% { box-shadow: 20px rgba(, , , .), 10px rgba(, , , );
}
% { box-shadow: 40px rgba(, , , ), 20px rgba(, , , ); }
}
.calendar p {
color: #ffffff; font: 18px/80px "微软雅黑";
}
#nowdate {
display: block; height: 100px;
width: 100px; background-color: #DFB779;
text-align: center; margin: auto;
font: 60px/100px "微软雅黑"; color: #ffffff;
}
.calendar strong {
margin: 20px auto; padding: 5px;
display: block; width: 250px;
height: 40px; color: #ffffff;
font: 20px/26px "微软雅黑";
border-top: dashed 1px #ffffff; /*在顶部添加虚线*/
}
#time {
color: #ffffff;
font: 20px/40px "微软雅黑";
}

JavaScript部分:

 

  • 显示当前时间:

window.onload= function(){
var fulldate = document.getElementById('fulldate');
var nowdate =document.getElementById('nowdate');
var hllo = document.getElementById('hllo');
var time =document.getElementById('time');
var fullTime = new Date();
var year = fullTime.getFullYear();
var month = fullTime.getMonth();
var date = fullTime.getDate();
var dayarry = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
var hour = fullTime.getHours();
fulldate.innerHTML = year +"年"+(month+) +"月" +date +"日"+ dayarry[fullTime.getDay()];
nowdate.innerHTML = date;

主要属性:

       window属性:onload

onload属性是一个事件处理程序, 用于Window、XMLHttpRequest、<img>元素等的加载事件,在资源加载时会触发。

  window属性:document.getElementById()

      getElementById() 方法可返回对拥有指定 ID 的第一个对象的引用。

  new Date()

      返回当前的时间。

  getFullYear / getMonth / getDate() 方法

      getFullYear() 方法可返回一个表示年份/月份/日期的数字。

  getDay() 方法

      可返回一周(0~6)的某一天的数字。结合上面定义的dayarry数组,输出今天为周 几。

   innerHTML 属性

      改变 HTML 元素的内容

  • 随机励志语句部分

var hlloarry=[
"人在旅途,难免会遇到荆棘和坎坷,风雨过后,有美丽的彩虹。",
"要想改变命运,首先改变自己",
"勤奋是你生命的密码,能译出你一部壮丽的史诗",
"左右一个人成功的,不是能力,而是选择",
"没有退路的时候,正是潜力发挥最大的时候",
"没有天生的信心,只有不断培养的信心", ];
hllo.innerHTML=hlloarry[parseInt(hour/)];

主要属性:

  parseInt() 函数

    parseInt() 函数可解析一个字符串,并返回一个整数。

  • 倒计时部分

var endTime = new Date(year,month,date,,,);
setInterval(fun,);
function fun(){
var nowTime = new Date();
var s = parseInt((endTime-nowTime)/);/*总共的秒数*/
var ss = parseInt(s%);
var m = parseInt((s/)%);
var h = parseInt((s//)%);
s<? ss=""+s:s;
m<? m=""+m:m;
h<? h=""+h:h;
time.innerHTML=h+"小时"+m+"分"+ss+"秒";
}

主要属性:

setInterval(code,millisec) 方法

code:调用函数或计算表达式;millisec:调用 code 之间的时间间隔,以毫秒计, 1000为1秒

倒计时计算方法:

通过endtime 减去 nowtime 得出今天还剩多少秒,再转换为时分秒的格式输出出来。

JavaScript实战实例剖析——(激励倒计时日历)的更多相关文章

  1. HTML5实战与剖析之媒体元素(6、视频实例)

    HTML5中的视频标签和及其模仿视频播放器的效果在一些手机端应用比較多.由于手机端基本上废除了flash的独断.让HTML5当家做主人,所以对视频支持的比較好. 所以今天专门为大家奉上HTML5视频标 ...

  2. JavaScript实战(带收放动画效果的导航菜单)

    虽然有很多插件可用,但为了共同提高,我做了一系列JavaScript实战系列的实例,分享给大家,前辈们若有好的建议,请务必指出,免得误人子弟啊! ( 原创文章,转摘请注明:苏福:http://www. ...

  3. HTML5实战与剖析之触摸事件(touchstart、touchmove和touchend)(转)

    HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略,咱们只分享应用广泛兼容不错的事件,日后随着兼容情况提升以后再陆续添加分享.今天为大家介绍的事件主 ...

  4. HTML5实战与剖析之原生拖拽(四可拖动dragable属性和其他成员)

    可拖动dragable属性 之前我们已经为大家介绍过几篇有关HTML5中原生拖拽的相关知识了.今天为大家介绍HTML5拖拽中的其他一些小东东,闲话不多说赶快一起看看吧. 在默认情况下,链接.文本和图像 ...

  5. Selenium2学习-035-WebUI自动化实战实例-033-页面快照截图应用之三 -- 区域截图(专业版)

    之前有写过两篇博文讲述了 WebUI 自动化测试脚本中常用的截图方法,敬请参阅如下所示链接: 浏览器显示区域截图 浏览器指定区域截图 那么当需要截取的区域不在浏览器显示窗口范围之内时,之前的方法显然无 ...

  6. Selenium2学习-027-WebUI自动化实战实例-025-JavaScript 在 Selenium 自动化中的应用实例之三(页面滚屏,模拟鼠标拖动滚动条)

    日常的 Web UI 自动化测试过程中,get 或 navigate 到指定的页面后,若想截图的元素或者指定区域范围不在浏览器的显示区域内,则通过截屏则无法获取相应的信息,反而浪费了无畏的图片服务器资 ...

  7. Selenium2学习-014-WebUI自动化实战实例-012-Selenium 操作下拉列表实例-div+{js|jquery}

    之前已经讲过了 Selenium 操作 Select 实现的下拉列表:Selenium2学习-010-WebUI自动化实战实例-008-Selenium 操作下拉列表实例-Select,但是在实际的日 ...

  8. Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary

    此文主要讲述 Java 运行 Selenium 脚本时,因 Friefox 浏览器版本与 selenium-server-standalone-x.xx.x.jar 不兼容引起的 org.openqa ...

  9. (转)HTML5实战与剖析之触摸事件(touchstart、touchmove和touchend)

    HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略,咱们只分享应用广泛兼容不错的事件,日后随着兼容情况提升以后再陆续添加分享.今天为大家介绍的事件主 ...

随机推荐

  1. 一:XMind

  2. xml 需要转义的字符

    XML实体中不允许出现"&","<",">"等特殊字符,否则XML语法检查时将出错,如果编写的XML文件必须包含这些字符 ...

  3. Laravel + Vue + Element 考勤应用 - 人力资源系统

    项目地址 Bee 介绍 Bee 是人力资源系统中的考勤应用,主要功能用于员工申请假单.Bee具有较高的性能.扩展性等,其中包括前后端分离.插拔式的规则验证(验证器).数据过滤(装饰器).消息队列等,后 ...

  4. java架构之路-(NoSql专题)MongoDB快速上手

    NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL".在现代的计算系统上每天网络上都会产生庞大的数据量.这些数据有很大一部分是由关系数据库管理系统(RD ...

  5. Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示

    目录管理命令ls:列出指定目录下的内容格式: ls [OPTION]... [FILE]...   -a:显示所有文件包括隐藏文件   -A:显示除.和..之外的所有文件   -l,--long:显示 ...

  6. js中的事件绑定的三种方式

    1 直接在html标签中绑定 <button onclick = "show()"></button> 注意当你引用的js代码是包裹在window.onlo ...

  7. 问题 C: 「Usaco2010 Dec」奶牛健美操O(∩_∩)O

    题目描述 Farmer John为了保持奶牛们的健康,让可怜的奶牛们不停在牧场之间的小路上奔跑.这些奶牛的路径集合可以被表示成一个点集和一些连接 两个顶点的双向路,使得每对点之间恰好有一条简单路径.  ...

  8. 给一个整数数组,找到两个数使得他们的和等于一个给定的数 target。

    描述 给一个整数数组,找到两个数使得他们的和等于一个给定的数 target. 你需要实现的函数twoSum需要返回这两个数的下标, 并且第一个下标小于第二个下标.注意这里下标的范围是 0 到 n-1. ...

  9. java VS c#,异同点

    因工作安排,后期需要维护一个java项目.所以稍微熟悉下java,开此篇记录下java与c#的区别点,方便增强自己学习效果.肯定是不全的,可能是有错的,欢迎批评指正. 一.关键字 描述 C# Java ...

  10. mongodb定时删除数据(索引删除)

    一 简介:本文介绍创建自动删除数据的TTL索引 二 目的 定时删除数据三 创建方法   db.collection.createIndex(keys, options)   options:   ex ...