javascript如何实现数字时钟特效
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章给大家分享的是有关javascript如何实现数字时钟特效的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。先看效果,动态数字时钟用到了jQuery,但是只是用来获取元
千家信息网最后更新 2025年02月02日javascript如何实现数字时钟特效
这篇文章给大家分享的是有关javascript如何实现数字时钟特效的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
先看效果,动态数字时钟
用到了jQuery,但是只是用来获取元素,只有一点点
面向对象开发
看代码
HTML,自己引入jQuery和js,jQuery在前
012::
CSS
*{ margin: 0; padding: 0;}html,body{ height: 100%; width: 100%; background-color: #0e141b; overflow: hidden; /* 设置溢出隐藏 */}.wrapper{ text-align: center; width: 100%;}.wrapper .column,.wrapper .coln{ display: inline-block; vertical-align: top; color: rgba(224,230,235,0.89); font-size: 86px; line-height: 86px; font-weight: 300;}.column{ transition: all 300ms ease-in;}.coln{ /* 冒号的位置 */ transform: translateY(calc(50vh - 83px));}/* 以下都是不同类名对应的透明度 */.visible{ opacity: 1;}.close{ opacity: 0.25;}.far{ opacity: 0.15;}.distance{ opacity: 0.05;}
JS
function Index(dom, use) { // 把传进来的DOM元素转数组 this.column = Array.from(dom); // 把use转到全局,这个是判断要显示的时制是112小时还是24小时 this.use = use; // 这个数组是后面要设置的类名 this.classList = ['visible', 'close', 'far', 'distance', 'distance', 'distance', 'distance', 'distance']; this.creatDom(); this.start();//开始}// 开始函数Index.prototype.start = function () { var self = this; setInterval(function () { var c = self.getClock(); // console.log(c); self.column.forEach(function (ele, index) { var n = + c[index]; var offset = n * 86;//移动距离 console.log(offset); $(ele).css({ 'transform': 'translateY(calc(50vh - ' + offset + 'px - 73px))' // 设置移动 }); Array.from(ele.children).forEach(function (ele2, index2) { var className = self.getClass(n, index2); // 调用函数设置类名 $(ele2).attr('class', className); }) }) }, 500);};// 为距离时间不一样的元素设置不一样的class名Index.prototype.getClass = function (n, i) { var className = this.classList.find(function (ele, index) { return i - index === n || i + index === n; }) return className || "";} // 获得时间并且格式化时间,字符串 21:06:09 ==> 210609Index.prototype.getClock = function () { var d = new Date(); // 这里走一个三目运算符,如果use是真(true)则取值,如果为假则12取余转为12小时制 return [this.use ? d.getHours() : d.getHours() % 12 || 12, d.getMinutes(), d.getSeconds()].reduce(function (p, n) { return p + ('0' + n).slice(-2); // 这里是吧个位数加0,比如1添加一个0后得到01,如果是12加0后事012,但是取数值后两位,得到12 }, '')};// 由于把HTML元素都写到HTML文件里,太过冗余,所以使用for循环添加进去Index.prototype.creatDom = function () { for (var i = 0; i < 6; i++) { var oDiv = '' + i + ''; $(".six").append(oDiv); } for (var i = 0; i < 10; i++) { var iDiv = '' + i + ''; $(".ten").append(iDiv); }}; // 第二个参数,true为24小时制,false为12小时制new Index($('.column'), true);
js的注释我写的比较全,应该可以看懂
感谢各位的阅读!关于"javascript如何实现数字时钟特效"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
小时
元素
数字
时钟
时间
类名
特效
内容
函数
数组
更多
篇文章
移动
不同
不错
实用
个位
个位数
代码
位置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
出国打工 软件开发
服务器管理系统怎么改
计算机网络技术专业环境分析
软件开发具体实施方案
软件开发和公务员
ser服务器的英文
软件开发连锁吴通控股
内蒙古定制软件开发
网络技术会考跑到了百度界面
杭州微甜网络技术有限公司
网站服务器数据库的关系
怎么把数据库放到云盘
工商银行软件开发中心雷呜
奶茶管理系统数据库
滨州微信小程序软件开发公司
软件开发培训避坑
会计电算软件开发规范
app软件开发费用价格
杭州临安区学习软件开发
路由器中心服务器连接异常怎么办
我的世界手机版友好的生存服务器
网络安全的基本保护
广西布云网络技术有限公司
软件开发过程中的下游成果
先健互联网科技
西安沃美达网络技术有限公司
网络安全直播观看心得
原神B站服务器有多少人
武汉服务器特价
软件开发项目沟通函