基于jQuery和CSS3制作数字时钟附源码下载(jquery篇)


Posted in Javascript onNovember 24, 2015

废话不多说了,先给大家展示下效果图,感兴趣的朋友继续往下看 哦

基于jQuery和CSS3制作数字时钟附源码下载(jquery篇)

查看演示       源码下载

HTML

和上一篇文章:使用jQuery和CSS3制作数字时钟(CSS3篇)一样的HTML结构,只是多了个>date用来展示日期和星期的。

<div id="clock" class="light"> 
 <div class="display"> 
  <div class="date"></div> 
  <div class="digits"></div> 
 </div> 
</div>

jQuery

CSS代码请参照上一篇文章,本文不再??拢?苯涌?Query代码。

首先我们定义参数,定义用来调用数字的class名称数组,定义中文星期名称,定义时分秒的位置。

$(function(){ 
 var clock = $('#clock'); 
 //定义数字数组0-9 
 var digit_to_name = ['zero','one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']; 
 //定义星期 
 var weekday = ['周日','周一','周二','周三','周四','周五','周六']; 
 var digits = {}; 
 //定义时分秒位置 
 var positions = [ 
  'h1', 'h2', ':', 'm1', 'm2', ':', 's1', 's2' 
 ]; 
});

然后构建数字时钟的时分秒。在上一篇文章中我们是直接在html中放置了数字时钟的html结构,而现在我们使用jQuery来处理时钟的展示,通过append()方法来构建数字时钟。

var digit_holder = clock.find('.digits'); 
 $.each(positions, function(){ 
  if(this == ':'){ 
   digit_holder.append('<div class="dots">'); 
  } 
  else{ 
   var pos = $('<div>'); 
   for(var i=1; i<8; i++){ 
    pos.append('<span class="d' + i + '">'); 
   } 
   digits[this] = pos; 
   digit_holder.append(pos); 
  } 
 });

最后,我们要让时钟跑起来。每秒钟调用一次update_time()函数,在update_time()中,我们先用moment.js来格式化时间,关于moment.js的介绍请参照本站文章:使用moment.js轻松管理日期和时间。然后根据当前时分秒,分别设置时分秒数字的class属性,即显示当前时分秒数字。接着继续使用moment.js来格式化日期和星期,最终完成了会走动的数字时钟,请看下面代码:

$(function(){ 
 ... 
 (function update_time(){ 
  //调用moment.js来格式化时间 
  var now = moment().format("HHmmss"); 
  digits.h1.attr('class', digit_to_name[now[0]]); 
  digits.h2.attr('class', digit_to_name[now[1]]); 
  digits.m1.attr('class', digit_to_name[now[2]]); 
  digits.m2.attr('class', digit_to_name[now[3]]); 
  digits.s1.attr('class', digit_to_name[now[4]]); 
  digits.s2.attr('class', digit_to_name[now[5]]); 
  var date = moment().format("YYYY年MM月DD日"); 
  var week = weekday[moment().format('d')]; 
  $(".date").html(date + ' ' + week); 
  // 每秒钟运行一次 
  setTimeout(update_time, 1000); 
 })(); 
});
Javascript 相关文章推荐
在Ubuntu上安装最新版本的Node.js
Jul 14 Javascript
jQuery实现自动切换播放的经典滑动门效果
Sep 12 Javascript
javascript事件委托的用法及其好处简析
Apr 04 Javascript
js图片延迟加载(Lazyload)三种实现方式
Mar 01 Javascript
JavaScript实现提交模式窗口后刷新父窗口数据的方法
Jun 16 Javascript
使用Fullpage插件快速开发整屏翻页的页面
Sep 13 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
Jan 27 Javascript
angularJs中$scope数据序列化的实例
Sep 30 Javascript
javascript实现手动点赞效果
Apr 09 Javascript
微信小程序页面渲染实现方法
Nov 06 Javascript
Vue-CLI 3 scp2自动部署项目至服务器的方法
Jul 24 Javascript
全面解析js中的原型,原型对象,原型链
Jan 25 Javascript
基于jquery实现简单的手风琴特效
Nov 24 #Javascript
jQuery插件实现无缝滚动特效
Nov 24 #Javascript
Jquery ajax加载等待执行结束再继续执行下面代码操作
Nov 24 #Javascript
谈谈encodeURI和encodeURIComponent以及escape的区别与应用
Nov 24 #Javascript
javascript实现加载xml文件的方法
Nov 24 #Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
Nov 24 #Javascript
JavaScript转换与解析JSON方法实例详解
Nov 24 #Javascript
You might like
php实现兼容2038年后Unix时间戳转换函数
2015/03/18 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
javascript 简练的几个函数
2009/08/29 Javascript
jquery lazyload延迟加载技术的实现原理分析
2011/01/24 Javascript
JS模板实现方法
2013/04/03 Javascript
Jquery实现显示和隐藏的4种简单方式
2013/08/28 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
Javascript 6里的4个新语法
2016/08/25 Javascript
微信小程序 image组件binderror使用例子与js中的onerror区别
2017/02/15 Javascript
Bootstrap table简单使用总结
2017/02/15 Javascript
纯js的右下角弹窗实例
2017/03/12 Javascript
利用node.js制作命令行工具方法教程(一)
2017/06/22 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
详解NODEJS的http实现
2018/01/04 NodeJs
详解VUE前端按钮权限控制
2019/04/26 Javascript
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
Pandas过滤dataframe中包含特定字符串的数据方法
2018/11/07 Python
Python中用pyinstaller打包时的图标问题及解决方法
2020/02/17 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
Python使用socket模块实现简单tcp通信
2020/08/18 Python
python中的对数log函数表示及用法
2020/12/09 Python
linux系统下pip升级报错的解决方法
2021/01/31 Python
CSS3的文字阴影—text-shadow的使用方法
2012/12/25 HTML / CSS
Mankind西班牙男士护肤品网站:购买皮肤护理、护发和剃须
2017/04/27 全球购物
Goodee官方商店:迷你投影仪
2021/03/15 全球购物
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
财务管理专业自荐信范文
2013/12/24 职场文书
化工实习心得体会
2014/09/09 职场文书
2015年党员自评材料
2014/12/17 职场文书
2015年安全生产工作总结范文
2015/04/02 职场文书
2015年个人实习工作总结
2015/05/28 职场文书
青年文明号创建口号大全
2015/12/25 职场文书
shell进度条追踪指令执行时间的场景分析
2022/06/16 Servers