`
夜之son
  • 浏览: 26312 次
  • 性别: Icon_minigender_1
  • 来自: 信阳
社区版块
存档分类
最新评论

js时钟(修改)

阅读更多

最近项目里需要一个时钟控件,不是那种可以选择日期的,只是一个钟摆。从网上找了个控件。尊重作者,原文地址为http://www.ayuelee.cn/javascript-clock.html

但是这个控件不支持IE。至少在原文提供的包里的文件不行。我看了下源码,代码有支持IE的效果,不知道作者太累了还是大意了,有个地方,一个很小的问题,使得它不能够在ie下工作。我认为出错的地方是这里:

	cb.innerHTML= [ 
			/*1*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+clockbg.src+');width:'+cw+';height:'+ch+'px;"></div></div>',
			/*1*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+hourhand.src+');width:'+hourhand.width

+';height:'+hourhand.height+'px;"></div></div>',
			/*2*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+minhand.src+');width:'+minhand.width

+';height:'+minhand.height+'px;"></div></div>',
			/*3*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+sechand.src+');width:'+sechand.width

+';height:'+sechand.height+'px;"></div></div>',
			/*4*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;cursor:hand;corsor:pointer;">1<div '+s2+clock_mask.src+');width:'+clock_mask.width

+';height:'+clock_mask.height+'px;"></div></div>',
			].join("");

 具体出错原因很简单,大家alert一下就知道了,width后面少了单位px.只要加上单位就可以了,IE8测试通过。

不得不说这个时钟做的很细致,至少在类别上还算很细。

修改后就是这样:

cb.innerHTML= [ 
			/*1*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+clockbg.src+');width:'+cw+'px;height:'+ch+'px;"></div></div>',
			/*1*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+hourhand.src+');width:'+hourhand.width+'px

;height:'+hourhand.height+'px;"></div></div>',
			/*2*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+minhand.src+');width:'+minhand.width+'px

;height:'+minhand.height+'px;"></div></div>',
			/*3*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;"><div '+s2+sechand.src+');width:'+sechand.width+'px;

height:'+sechand.height+'px;"></div></div>',
			/*4*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;cursor:hand;corsor:pointer;">1<div '+s2+clock_mask.src+');width:'+clock_mask.width+'px;

height:'+clock_mask.height+'px;"></div></div>',
			].join("");
 

这样就ok了。

我把原版的和修改过的都放在附件里了,有需要的朋友可以拿下去用。再次感谢原作者。

  • 大小: 29.5 KB
0
0
分享到:
评论
4 楼 夜之son 2011-08-11  
liuxiang_in_ncs 写道
Clock.js中,时钟算法,应该改成
var hoursAngle = ((now.getHours()+now.getMinutes()/60)%12)/12*360 + 180 ;
而不是
var hoursAngle = (now.getHours()%12)/12*360 + 180 ;


IE中,还需要
/*4*/处
/*4*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;cursor:hand;corsor:pointer;">1<div '+s2+clock_mask.src+');width:'+clock_mask.width+'px;height:'+clock_mask.height+'px;"></div></div>',

已经转到android开发了,之前看别人代码玩玩的。那些代码我都看不懂了。
3 楼 liuxiang_in_ncs 2011-08-11  
Clock.js中,时钟算法,应该改成
var hoursAngle = ((now.getHours()+now.getMinutes()/60)%12)/12*360 + 180 ;
而不是
var hoursAngle = (now.getHours()%12)/12*360 + 180 ;


IE中,还需要
/*4*/处
/*4*/'<div style="'+s1+'1;width:'+cw+'px;height:'+ch+'px;cursor:hand;corsor:pointer;">1<div '+s2+clock_mask.src+');width:'+clock_mask.width+'px;height:'+clock_mask.height+'px;"></div></div>',
2 楼 夜之son 2010-12-10  
libmw 写道
我的ie6还是不行……

try{
IEClock();
alert("请使用现代的浏览器,本业务不支持古老的IE6,谢谢合作");
}catch(e){PoorClock();};

加上这句。。。。。。呵呵
1 楼 libmw 2010-12-10  
我的ie6还是不行……

相关推荐

    绿色荧光电子时钟js时钟特效源码下载

    综上所述,“绿色荧光电子时钟js时钟特效源码”涵盖了JavaScript基础、DOM操作、时间处理、CSS样式应用等多个方面,是学习和实践前端开发的好材料。通过研究这个源码,开发者可以提升自己在网页动态效果实现和交互...

    纯Js实现的精美液晶时钟

    "纯Js实现的精美液晶时钟"项目就是一个利用JavaScript的强大功能,来创建一个模拟液晶显示屏效果的时钟。这个项目完全基于JavaScript,不依赖任何外部库,展现了JS在实现复杂动画和实时更新能力上的潜力。 液晶显示...

    js学习-数码时钟-动态显示当前时间

    在这个“js学习-数码时钟”项目中,我们将探讨如何利用JavaScript来创建一个实时更新,显示当前时间的数码时钟。 1. **基本概念** - **JavaScript**: 是一种解释型、弱类型、基于原型和事件驱动的编程语言,由网景...

    JavaScript时钟

    JavaScript时钟是一个基于JavaScript编程语言实现的实时时间显示功能,它可以动态更新页面上的时间,为用户提供当前日期和时间。在网页开发中,JavaScript时钟常用于创建动态用户体验,例如显示实时倒计时、日程提醒...

    javascript写的时钟

    JavaScript编写的时钟是一种常见的网页动态效果,它利用了JavaScript语言强大的时间和日期处理能力来实时显示当前时间。在这个实例中,我们主要会涉及到以下几个JavaScript的知识点: 1. **全局变量与函数**:在...

    html+css+js实现罗盘时钟

    在这个罗盘时钟项目中,JavaScript主要用来获取当前时间,计算指针的角度,并通过修改CSS属性来更新指针的位置。以下是一个简化的示例: ```javascript function updateClock() { const now = new Date(); const ...

    原生js图片时钟运行代码

    总结来说,"原生js图片时钟运行代码"项目展示了如何使用JavaScript的基本概念,如Date对象、DOM操作和BOM,结合定时器实现一个动态的数码时钟。通过这样的实践,开发者可以深入理解JavaScript在网页交互中的运用,并...

    javascript经典特效---纯JavaScript时钟.rar

    在本主题中,我们将深入探讨“纯JavaScript时钟”这一经典特效,它展示了JavaScript如何实时更新页面上的时间显示,无需依赖任何外部库,如jQuery。 在纯JavaScript时钟中,我们首先需要理解JavaScript的时间处理...

    javascript时钟

    JavaScript时钟是一种利用JavaScript编程语言实现的动态时钟,它能够实时显示当前时间,并且具有视觉上的吸引力。在这个实例中,我们看到的“飞动时钟”是一个特别的设计,它随鼠标的位置移动,增强了用户的交互体验...

    倒影时钟 javascript 倒影 时钟 源码 html IE

    "倒影时钟 javascript" 这个标题提到了两个主要概念:倒影时钟和JavaScript。倒影时钟是一种显示时间的视觉效果,它在设计上模拟了物体在水面或其他平面上产生的倒影,为网页增添了动态和美感。而JavaScript是一种...

    HTML炫酷时钟 动态 js调用

    这种时钟通过JS调用来更新页面上的时间,以确保显示的时钟始终与实际时间同步,无论是北京时间还是其他时区。在网页设计中,将这样的时钟置于后台顶部,可以提供一个直观的方式来展示在线时间,增强用户体验。 HTML...

    js动态实现美观的时钟展示显示

    还可以通过JavaScript动态改变这些样式,根据时间的小时部分更改颜色主题,以模拟昼夜交替: ```javascript function updateClock() { // ... const isNight = now.getHours() &gt;= 18 || now.getHours() ; // ...

    js数码时钟

    总的来说,这个JS数码时钟项目提供了一个基础的时间显示功能,并且允许用户自定义外观,适用于学习JavaScript时间和日期处理以及DOM操作。同时,它也展示了如何在实际项目中结合使用JavaScript和jQuery来增强用户...

    javascript时钟控件

    ### JavaScript时钟控件知识点详解 #### 一、概述 在网页开发中,有时我们需要在页面上显示实时的时间,这不仅能够为用户提供便利,还能增强网站的交互性和实用性。JavaScript作为一种常用的前端脚本语言,提供了...

    动画效果非常炫酷的时钟效果显示插件js

    总结而言,FlipClock.js是一款功能强大、易于定制的JavaScript时钟插件,它通过独特的翻页动画为网页带来了视觉冲击力。借助其丰富的API和高度的可扩展性,开发者可以轻松创建出符合自己设计需求的炫酷时钟效果。...

    用JavaScript创建超酷时钟背景特效

    ### 使用JavaScript创建动态时钟背景特效详解 #### 一、项目背景与意义 在现代网页设计中,添加一些动态元素可以极大地提升用户体验和网站的视觉吸引力。本文介绍了一个使用JavaScript实现的动态时钟背景特效,它...

    js写的电子时钟。。。。

    【标题】:“js写的电子时钟” 在编程领域,JavaScript是一种广泛使用的客户端脚本语言,尤其在网页交互和动态效果的实现上具有显著优势。本文将深入探讨如何使用JavaScript编写一个电子时钟,帮助初学者理解...

    JavaScript动态时钟.zip

    在本项目"JavaScript动态时钟.zip"中,我们将会探讨如何利用JavaScript来实现一个实时更新、显示系统当前时间的动态时钟,以及可能存在的两种不同实现方式。 首先,动态时钟的基本原理是通过JavaScript的`Date`对象...

    js数字、指针时钟

    在这个主题中,“js数字、指针时钟”涉及到了利用JavaScript创建动态的数字显示时钟和模拟摆动指针的时钟。 **数字时钟**: 1. **时间获取**:JavaScript的`Date`对象是处理日期和时间的基础,我们可以用`new Date...

Global site tag (gtag.js) - Google Analytics