如今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. 选择器, ,>,+,~

    一.后代选择器 选取指定元素的后代元素 与子元素选择器相比,后代选择器选取的不一定是直接后代(儿子),而是作用于所有后代元素(儿子.孙子.重孙…)都可以. 二.(>)子元素选择器 选取某个元素的 ...

  2. Connection activation failed Device not managed by NetworkManager

    1)查看NetworkManager服务是否启动 ps aux |grep NetworkManager 使用service NetworkManager start 命令启动该网络管理程序 2) 一 ...

  3. python常用算法(7)——动态规划,回溯法

    引言:从斐波那契数列看动态规划 斐波那契数列:Fn = Fn-1 + Fn-2    ( n = 1,2     fib(1) = fib(2) = 1) 练习:使用递归和非递归的方法来求解斐波那契数 ...

  4. Django配置实现数据库读写分离

    django在进行数据库操作的时候,读取数据与写数据(增.删.改)可以分别从不同的数据库进行操作. 1. 在配置文件中增加slave数据库的配置 2. 创建数据库操作的路由分发类 在meiduo_ma ...

  5. redis is configured to save RDB snapshots

    Redis被配置为保存数据库快照,但它目前不能持久化到硬盘.用来修改集合数据的命令不能用 原因: 强制关闭Redis 快照导致不能持久化. 解决方法: 运行 config set stop-write ...

  6. python dict(字典)

    补充知识点1: 数据类型的划分:可变数据类型.不可变数据类型 可变数据类型:     元组,bool,int,str      --可哈希 不可变数据类型:  list,dict,set        ...

  7. Java 方法重载 (Overload)

    对重载 (Overload) 的认识 为什么要用方法重载: 对于功能类似的方法来说,因为参数列表不一样,如果定义不同名称的方法,太麻烦且难以记忆. 为了解决这个问题,引入方法的重载. 重载的定义: 多 ...

  8. Data Deduplication Workflow Part 1

    Data deduplication provides a new approach to store data and eliminate duplicate data in chunk level ...

  9. 一、EditPlus 的安装 - Java软件的安装

    EditPlus:该软件的功能类似于windows的文本编辑器,可处理文本.HTML和程序语言的Windows编辑器. 1.安装包的下载:http://pan.baidu.com/s/1qW1akZq ...

  10. MySQL系列:走进数据库,相关概念你都明白吗?

    数据库,一个我们常常提到的名词,但是你有没有想过,它到底是什么意思呢,而我们常说的 MySQL.Oracle 等又到底指什么呢? 数据库 数据库(DataBase),简称 DB,是数据库是存储数据的集 ...