首页 >知识讲堂 >网站建设知识>如何利用CSS3和jQuery制作一个漂亮的动态时钟

如何利用CSS3和jQuery制作一个漂亮的动态时钟

2021-01-04 11:40:16 阅读(191 评论(0)

本文翻译自OldscholclockwithCSS3andjquery,主要讲述了如何利用CSS3和jquery制作一个美丽的动态时钟。Hi,大家好,我叫TobyPitman。chris邀请我写一篇关于我最近在论坛上发布的一些实验成果的文章,所以当我在Webkitblog和sawanarticle上看一些新的CSS3动画时,一个rotate属性深深吸引了我的注意,于是我开始写这篇文章。我在想什么可以在网页上旋转(GIF动画图片似乎可以),所以我有一个想法——是的,时钟不能旋转吗!开始!CSS3Transform:rotateTransform:rotate是CSS3的一个新特征,它可以让你...当然是实现一些旋转的东西。Transform还可以让你在网页上缩放、倾斜和移动对象。而以上这些都可以通过Transition属性来实现动画效果。听起来熟悉吗?是的,当然,和以前一样,我们还是会结合jquery来实现页面上元素的动画效果。因为使用jquery可以方便地操作CSS,从而获得动画效果。联想一下a:hover效果,你会对如何实现这个例子产生一些想法。它远没有jquery和mootols那么强大,但它足以做一些很酷的事情。请注意:此时钟例只能在Firefox3.1.1运行 、Safari3 在Chrome浏览器上。首先,我们需要准备一些图片作为时钟的图形界面。在这里,我们使用一张钟盘图片和三张指针图片,其中我们使用photoshop切割的600个运动指针×30张图片,并垂直放置。然后利用rotate属性使其绕中心点旋转。当然,指针使用透明的PNG格式图片。HTML标记此时钟的HTML标记非常简单,只使用UL列表,每个列表项(li)分别对应三个运动指针,并分配相应的id,代码如下:HTML标记此时钟的HTML标记非常简单,只使用UL列表,每个列表项(li)分别对应三个运动指针,并分配相应的id,代码如下:CSS代码复制代码#clock{position:relative;width:600px;height:600px;margin:20pxauto0auto0;background:url(clockface.jpg);list-style:none;}#sec,#min,#hour{position:absolute;width:30px;height:600px;top:0px;left:285px;}#sec{background:url(sechand.png);z-index:3;}#min{background:url(minhand.png);z-index:2;}#hour{background:url(hourhand.png);z-index:1;}CSS代码的复制也很简单,因为三个运动指针尺寸相同,从同一位置开始运动,我们把它们的代码写在一起,以简化代码。为了实现时钟内指针的绝对定位(absolutelyposition)我们将ul设置为相对定位(relativeposition)。为了实现时钟内指针的绝对定位(absolutelyposition)我们将ul设置为相对定位(relativeposition)。下面我们的jquery就要上场了。在这里,Javascript主要完成以下工作:获取当前时间计算和添加每个元素的CSS风格(旋转角度)定期设置CSS风格以获取时间。您可能会将PHP中的时间和日期等同于PHP,一开始,我的第一个想法是使用PHP,然而,后来我发现javascript中也有构造日期和时间的功能函数。需要注意的是,javascript获得的是本地时间,而不是服务器时间。首先,我将使用Date()函数获取日期信息,并将其赋予变量,我们可以通过Getseconds(),GetMinutes()或GetHours()获取三个指针的信息,如下代码:varseconds=newDate().getSeconds();上述代码将返回0到59的数字,并将其分配给seconds变量。接下来,我将计算每个指针的角度。接下来,我将计算每个指针的角度。我们将每周分为60等分,所以只要360/60,我们就会得到每个6,这意味着指针每秒或每分钟都会向前移动6度。将计算结果保存到另一个变量中,代码如下:varsdegree=seconds*6;时针的情况有点不同,因为每个周期是12等分,所以每小时针的前进角度是30度:360/12=30。在这种情况下,如果时针按这个增量运动,那就简单了,但并没有那么简单。它应该根据分针的值移动一小段距离,比如3:如果是30,时针会在3和4之间,但是我们该怎么办呢?请参见以下代码:varhdegree=hours*30 (mins/2);基本上,我们需要将分钟数除以2的值添加到hour后面,该值在0.5到29.5之间(rotate属性支持浮点小值)。例如,2.40将得到:2*30=60degress 40/2=20degreeseress----------------------hdegree=以下是CSSSS3rotate的CSS样式代码:#sec{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);}在这里,我们用jQuery动态添加上述样式:$("#sec").css({"-moz-transform":"rotate(45deg)","-webkit-transform":"rotate(45deg)"});这里的一个问题是如何将'sdegree'变量替换样式表中的45deg,可以这样做:varsrotate="rotate(" sdegree "deg)";jquery代码修改如下:$("#sec").css({"-moz-transform":srotate,"-webkit-transform":srotate});整合所有代码的jQuery代码如下:复制代码$(document).ready(function(){setInterval(function(){varseconds=newDate().getSeconds();varsdegree=seconds*6;varsrotate="rotate(" sdegree "deg)";$("#sec").css({"-moz-transform":srotate,"-webkit-transform":srotate});},1000);setInterval(function(){varhours=newDate().getHours();varmins=newDate().getMinutes();varhdegree=hours*30 (mins/2);varhrotate="rotate(" hdegree "deg)";$("#hour").css({"-moz-transform":hrotate,"-webkit-transform":hrotate});},1000);setInterval(function(){varmins=newDate().getMinutes();varmdegree=mins*6;varmrotate="rotate(" mdegree "deg)";$("#min").css({"-moz-transform":mrotate,"-webkit-transform":mrotate});},1000);});请注意,我们在Javascript中使用了setinterval函数,每秒执行一次。这个函数中也有一些获取时间的变量,所以每次调用时间值都会自动更新。这个函数中也有一些获取时间的变量,所以每次调用都会自动更新时间值。这样,我们的时钟就可以工作了。

以上就是关于如何利用CSS3和jQuery制作一个漂亮的动态时钟的相关介绍,更多如何利用CSS3和jQuery制作一个漂亮的动态时钟相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对如何利用CSS3和jQuery制作一个漂亮的动态时钟有更深的了解和认识。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

windows10便签在哪里设置

  Windows10便签是一种方便的数字便笺应用程序,它允许用户记录和保存重要的信息和提醒事项。这篇文章将为您介绍Windows10便签的设置和打开方式,帮助您更好地使用这个强大的工具。  1.在开始菜单中打开便签  在Windows10...查看详情

免费动态壁纸哪个好用呢?这几款为大家推荐

经常更新手机或者是电脑的壁纸,能够带给大家不一样的心情,而如果选择的是动态壁纸,更可以增添手机或者电脑的独特之处,让桌面也变得更为有趣,那么免费动态壁纸哪个好用呢?这几款给大家推荐一起来看看。1、太空人动态壁纸这款…查看详情

优化型网站建设:站点后期优化工作如何开展?

网站在建立设置完成之后,并不是就能够高枕无忧了,因为如果搜索引擎找不到的话,网站也等于白建,所以在完成网站建设之后,对于后期的优化工作开展的各项事情都需要掌握清楚,这样才能够在短时间内完成网站的转化率提升,那么到…查看详情

请问怎样可以快速转让印刷厂?

印刷厂转让该办哪些手续?1、必须受让他们所持有的公司的股权。例如:如果甲持有公司55%的股权,乙持有公司45%的股权。你可以受让甲方的股权,也可以受让乙方的股权,或者同时受让甲、乙两方的股权。但是需要提醒你注意的是,有限责任…查看详情

oa办公软件系统的重要性以及应用价值和作用

现如今发达的信息时代,信息量越大,人们的需求也就越大,各大企业也都会需要一个免费版oa办公软件协调企业发展。oa办公软件帮助着人们围绕公司为中心的展开工作,同时也优化了企业的内部流程管控,快速提高了政企的工作效率,由此…查看详情

css如何让图片居中

css如何让文字显示在图片上居中?1、首先我们创建一个父层div,然后定位为position:relative;2、其次我们创建img和span标签;3、接着img宽高为父级元素宽高;4、紧接着span定位为position:absolut...查看详情

鸿蒙系统和安卓系统两者有何不同

华为今年全新推出的鸿蒙系统和安卓系统有什么样的区别呢?下面小编就带大家来对比一下鸿蒙系统和安卓系统的不同之处。区别一:Android以Linux为基础,Linux以Unix为基础,即Android的内核实际上是Linux,而Linux实际上...查看详情

美容院100种拓客方法

  作为一个美容院,想要拓展自己的客户数量,吸引更多的顾客,其实是有很多方法的。下面是100种拓客方法,希望对您有所帮助。  1.在美容院门口加装引人注目的招牌,比如霓虹灯或长条形招牌。  2.建立美容院网站,提供在线预约…查看详情

这几款gps卫星定位系统很好用,精准定位都靠它

如今人们出行、寻人找物总是希望能够做到精准定位,在这一点上人们可以借助GPS定位系统来实现。很多软件依托于GPS卫星定位系统为大众提供了精准定位服务,那就总结介绍几款比较好用定位准确的GPS卫星定位软件。1、百度地图百度地图是…查看详情

自然人纳税是什么意思 自然人纳税的认定范围

  指税法规定直接负有纳税义务的单位与个人。税收制度的基本构成要素之一。每一种税都规定有相应的纳税人。如产品税以在我国境内从事生产、经营和进口应税产品的单位,下面小编就给大家来详细介绍一下自然人纳税是什么意思 …查看详情

网络销售怎么找客源

  网络销售是现今比较流行的一种商业模式,通过互联网平台进行销售,具有透明、高效等诸多优势。然而,网络销售也有着激烈的竞争环境,如何找到更多的客源,成为网络销售成功的关键之一。本文将介绍网络销售找客源的方法和技巧…查看详情

公司怎么申请商标?公司注册商标需要哪些流程?

公司怎么申请商标?申请商标注册既可以用个人的名义,也可以用公司的名义申请。在法律意义上,两者的作用也是同等的。本文主要讲一下公司怎么申请商标。首先要区别开公司申请商标注册和个人申请商标注册的区别。图片来源于网络公…查看详情

什么是cms 市面上常见的cms有哪些

  相信大家在搭建网站的时候都会使用到cms,其实就是大家网站的系统,但是很多的人不知道什么是cms 市面上常见的cms有哪些,下面小编就给大家来详细介绍一下。  市面上常见的cms  1.DEDE-这是一款国内开源的cms,作者...查看详情

个人网页制作代码

HTML代码怎么写?html规范写法:如何让网页显示代码?第一步,打开电脑进入桌面,打开软件进界面。第二步,打开软件进入后,打开相应的文档。第三步,找到浏览器右上角更多点击。第四步,下拉菜单找到更多工具-开发者工具点击进入。第五…查看详情

联想笔记本电脑系统怎么重装的教程

联想电脑怎么重装系统装系统教程?第一步,首先准备一个系统盘,直接下载一个安装包,下载好了下载到U盘里,直接就可以安装系统了,第二步,if8进入PE启动模式直接启动就可以安装系统了,安装系统大概20分钟左右就可以进入系统了,进…查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

已为0个客户提供专业互联网服务咨询
  • 手机号码
  • 验证码图形验证码换一张
  • 短信校验码

    电话咨询

    在线咨询