JavaScript VMLRender Clock
JavaScript
Download (.zip)
<body bgcolor="#FFFFFF" text="#000000" leftmargin="5" topmargin="10" marginwidth="5" marginheight="5"> <div id="Layer1" style="position:absolute; top:10; left:0; width:100px; height:90px; z-index:1; visibility: visible;" align="left"> <xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v" /> <object id="VMLRender" codebase="vgx.dll" classid="CLSID:10072CEC-8CC1-11D1-986E-00A0C955B42E"> </object> <style> <!-- v\:* { behavior: url(#VMLRender); } --> </style> <script language="JavaScript1.2"> <!-- var clocksize=55
function updatePointers() { var now = new Date(); secondsPointer.style.rotation = now.getSeconds() * 6; minutesPointer.style.rotation = now.getMinutes() * 6 + now.getSeconds() / 10; hoursPointer.style.rotation = now.getHours() * 30 + now.getMinutes() / 2; }
if (document.all&&window.print){ window.attachEvent("onload", initVMLClock); window.attachEvent("onresize", resizeObjects); }
function initVMLClock() { resizeObjects(); updatePointers(); window.setInterval("updatePointers()", 1000);
}
function resizeObjects() { var size = Math.min(clocksize, clocksize); clock.style.pixelWidth = size - 2*(size * 0.045); clock.style.pixelHeight = size - 2*(size * 0.045); clock.childNodes.item(0).childNodes.item(0).weight = size * 0.01;
secondsPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.001; minutesPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.025; hoursPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.04; }
function toggle(sId) { var el = document.getElementById(sId); el.style.display = (el.style.display == "none") ? "block" : "none"; }
//--> </script> <v:group id="clock" coordsize="100 100" style="position: relative;"> <v:oval style="width: 100%; height: 100%"> <v:stroke weight="10px" color="gray"/> <v:fill type="gradient" color="white" color2="#6384b5" angle="225deg"/> </v:oval> <v:oval style="width: 10; height: 12; top: -4px; left: 45px;"> <v:stroke weight="1px" color="gray"/> <v:fill type="gradient" color="white" color2="#6384b5" angle="225deg"/> </v:oval> <v:oval style="width: 12; height: 10; top: 46px; left: -5px;"> <v:stroke weight="1px" color="gray"/> <v:fill type="gradient" color="white" color2="#6384b5" angle="225deg"/> </v:oval> <v:oval style="width: 12; height: 10; top: 46px; left: 92px;"> <v:stroke weight="1px" color="gray"/> <v:fill type="gradient" color="white" color2="#6384b5" angle="225deg"/> </v:oval> <v:oval style="width: 10; height: 12; top: 92px; left: 45px;"> <v:stroke weight="1px" color="gray"/> <v:fill type="gradient" color="white" color2="#6384b5" angle="225deg"/> </v:oval>
<v:group id="secondsPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;"> <v:line from="50,50" to="50,5"> <v:stroke weight="2px" endcap="round" color="navy"/> </v:line> </v:group>
<v:group id="minutesPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;"> <v:line from="50,50" to="50,8"> <v:stroke weight="4px" endcap="round" color="navy"/> </v:line> </v:group>
<v:group id="hoursPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;"> <v:line from="50,50" to="50,20"> <v:stroke weight="7px" endcap="round" color="navy"/> </v:line> </v:group>
</v:group> </div>
|