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

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

2021-01-04 11:40:16 阅读(202 评论(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制作一个漂亮的动态时钟有更深的了解和认识。

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

推荐阅读

全棉时代一再翻车,企业究竟该如何做品牌营销?

近日,全棉时代发布了一篇名为“全棉小剧场防身术”的广告,内容是一位女子深夜回家,被人尾随,女生急中生智拿出全棉时代的卸妆湿巾,使自己变丑,最后吓走了歹徒。(全棉时代广告截图)这段涉嫌丑化、物化女性的视频迅速在网络…查看详情

当下比较火爆的思维导图软件,有你常用的那一款吗

思维导图能够更加让人理清思路,而且各种工作学习方面等都可以更直观地展示出来,但是很多人却没办法找到合适的思维导图软件,以下是我给大家推荐的思维导图软件,希望对您有所帮助。一、GitMind.GitMind是个非常方便而且好用的思维导…查看详情

zoom是什么软件

zoom是什么app?Zoom是一款多人手机云视频会议软件APP。Zoom为用户提供兼备*视频会议与移动网络会议功能的免费云视频通话服务。它致力于帮助广大企业和组织打造无障碍的沟通环境,提升工作效率。我们的视频、语音、内容共享和聊天云平台上...查看详情

股价大跌5%!时代变化快,连麦当劳都跟不上了?

麦当劳第三季度财报显示,净利润下滑2%,约合人民币114亿元,麦当劳第一次出现业绩下滑。受财报影响,麦当劳股价也大跌5%,市值蒸发约合人民币566亿元。面对时代变化,麦当劳一直在追随:和外卖商合作增加网上订购、送餐上门等服务;…查看详情

如何在手机上建立自己的网站

现在移动互联网是越来越发达了,很多的用户都在移动端获取信息,下面万商云集*就给大家来介绍一下如何在手机上建立自己的网站,希望能帮助到大家。  1、手机网站的兼容性问题  现在市场上不同的智能手机有不同的屏幕尺寸,很多…查看详情

绘画软件app推荐免费的几款,有需要可以试试

绘画可以给生活带来更多的情绪,同时还能够陶冶情操,还能够增强想象力,对于小朋友来说还可以提升专注度,为之后的课堂学习打好一个好的基础,而现在绘画的软件APP也非常多,可以通过这些软件,来提升绘画的水平,那么绘画软件APP…查看详情

直通车推广怎么做 直通车推广方法技巧

  其实直通车推广的真的不难,我们在日常的推广当中,想要做出一个好数据,其实很简单,你理清你的思路,做好各种数据的计算,比如盈亏平衡点,产品点击率衡量等。下面*就给大家来详细介绍一下直通车推广怎么做 直通车推广方…查看详情

如何申请网站域名,有哪些步骤可以参考

如何申请网站域名?申请网站域名作为建设网站的第一步,是打开公司或个人网站的入口。就像是一个门牌地址,也像是是一个坐标地址,只要知道了坐标地址,我们就可以在地图上标示出来。可是在做网站之前,我们应该如何申请网站域名…查看详情

手机投屏软件哪个好用 免费好用的手机投屏软件

  现在大家平时在周末的时候也会经常在家里看电影,很多人都喜欢使用手机投屏,下面*就给大家来详细介绍一下手机投屏软件哪个好用 免费好用的手机投屏软件这一块的内容,希望能帮助到大家。  手机投屏软件哪个好用  1、《…查看详情

  怎么样注销手机银行账号

  怎样自己注销手机银行?  1、登陆手机银行后,在主页面点击“更多”,显示更多菜单。  2、在更多菜单列表中选择“设置”,点击打开它。  3、在设置菜单列表中选择“注销手机银行”,点击打开它。  4、在此页面按要求输入…查看详情

财富管理CRM:解决企业难题,提升行业竞争力

进十年国家的经济发展迅速,财富行业发展也非常迅猛,大规模的财富企业在不断扩大,新手财富企业数量也在不断上升。迅速的扩展刺激着整个行业向着精细化运作的方向不断升级发展。新成立的财富企业面临的行业难题是企业流程不规范…查看详情

注册公司商标有哪些流程?这些你都需要了解

申请注册公司商标可以自己向商标局申请,也可以直接找专业的商标代理公司委托申请注册。图片来源于网络申请注册公司商标所需资料:· 商标图样· 商标所属的商品/服务项目· 营业执照复印件(加盖公章)· 商标...查看详情

dubbo原理和机制是什么

dubbo原理深度解析?dubbo原理和机制:Dubbo是一个高性能优秀的服务框架,它使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成。Dubbo是一款高性能、轻量级的开源JavaRPC框架。它提供了三大...查看详情

2021适合母婴收银系统十大排名推荐

随着母婴行业的迅速发展,越来越多的新型收银系统被应用于母婴店,发挥着重要的作用。那么母婴收银系统哪些比较好用,哪些口碑较好,你知道吗?本篇文章就围绕“母婴收银系统十大v排名”为您一一列出2021市场最好用的十个母婴收银系…查看详情

argument是什么意思

argument是参数的意思吗?argument不是参数的意思argument释义:n.论证;论据;争吵;内容提要;argument有失败的意思么?argument没有失败的意思。argument美[ˈɑrɡjəmənt]英[ˈɑː(r)ɡ...查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

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

    电话咨询

    在线咨询