javascript显示倒影图片
2008-08-06 22:48
225 查看
设计思路
使用垂直翻转滤镜(即flipV)使图片产生倒影效果;
使用wave滤镜使倒影产生静态波纹效果;
再通过定时器不断改变波纹的偏移量phase,使倒影产生动态波纹,有如水波在不断变化。
<HTML>
<HEAD>
<META name="GENERATOR" content="Microsoft FrontPage 5.0">
<META name="ProgId" content="FrontPage.Editor.Document">
<TITLE>指针式时钟</TITLE>
</HEAD>
<BODY onload="clock()">
<SCRIPT LANGUAGE="JavaScript">
var S = '......'; S = S.split('');//构成秒针的圆点
var M = '.....'; M = M.split('');//构成分针的圆点
var H = '....'; H = H.split('');//构成时针的圆点
var Ybase = 8; //构成秒、分和时针的圆点之间的间隔距离(Y轴)
var Xbase = 8; //构成秒、分和时针的圆点之间的间隔距离(X轴)
var dots = 12; //钟盘上的小时刻度数,通常为12,即1,2,3,...,12
for (var i = 0; i < dots; i++)
{//将小时刻度值(即1,2,3,...,12)分别放入各自的<DIV>块中,且其id属性相同,即dot_Digits
document.write('<DIV id="dot_Digits" style="position:absolute;width:30px;height:30px;font-size:10px;color:black;text-align:center;padding-top:10px">'+(i+1)+'</DIV>');
}
for (i = 0; i < S.length; i++)
{//将构成秒针的圆点分别放入各自的<DIV>块中,且其id属性相同,即s_dots
document.write('<DIV id=s_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:red"></DIV>');
}
for (i = 0; i < M.length; i++)
{//将构成分针的圆点分别放入各自的<DIV>块中,且其id属性相同,即m_dots
document.write('<DIV id=m_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:black"></DIV>');
}
for (i = 0; i < H.length; i++)
{//将构成时针的圆点分别放入各自的<DIV>块中,且其id属性相同,即h_dots
document.write('<DIV id=h_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:black"></DIV>');
}
function clock()
{//显示指针式时钟
var time = new Date ();
var secs = time.getSeconds();
var mins = time.getMinutes();
var hrs = time.getHours();
var Ypos = document.body.scrollTop +80; //把时钟中心设置为距可视区顶边 80 pixel
var Xpos = document.body.scrollLeft +100;//把时钟中心设置为距可视区左边界 100 pixel
for (var i=0; i < dots; ++i)
{//根据新的时钟中心和各个小时刻度值的角度值,设置其新坐标
dot_Digits[i].style.pixelTop = Ypos -15 + 44 * Math.sin(-Math.PI/2+2*Math.PI*(i+1)/12);
dot_Digits[i].style.pixelLeft = Xpos -15 + 44 * Math.cos(-Math.PI/2+2*Math.PI*(i+1)/12);
}
var sec = -Math.PI/2 + 2*Math.PI * secs/60; //秒针角度
for (i=0; i < S.length; i++)
{//根据新的时钟中心和秒针角度,设置秒针上各个圆点的坐标值
s_dots[i].style.pixelTop = Ypos + i * Ybase * Math.sin(sec);
s_dots[i].style.pixelLeft = Xpos + i * Xbase * Math.cos(sec);
}
var min = -Math.PI/2 + 2*Math.PI * mins/60; //分针角度
for (i=0; i < M.length; i++)
{//根据新的时钟中心和分针角度,设置分针上各个圆点的坐标值
m_dots[i].style.pixelTop = Ypos + i * Ybase * Math.sin(min);
m_dots[i].style.pixelLeft = Xpos + i * Xbase * Math.cos(min);
}
var hr = -Math.PI/2 + 2*Math.PI * (hrs+mins/60)/12; //时针角度
for (i=0; i < H.length; i++)
{//根据新的时钟中心和时针角度,设置时针上各个圆点的坐标值
h_dots[i].style.pixelTop = Ypos + i * Ybase*Math.sin(hr);
h_dots[i].style.pixelLeft = Xpos + i * Xbase*Math.cos(hr);
}
setTimeout('clock()', 50);//定时
}
</SCRIPT>
</BODY>
</HTML>
使用垂直翻转滤镜(即flipV)使图片产生倒影效果;
使用wave滤镜使倒影产生静态波纹效果;
再通过定时器不断改变波纹的偏移量phase,使倒影产生动态波纹,有如水波在不断变化。
<HTML>
<HEAD>
<META name="GENERATOR" content="Microsoft FrontPage 5.0">
<META name="ProgId" content="FrontPage.Editor.Document">
<TITLE>指针式时钟</TITLE>
</HEAD>
<BODY onload="clock()">
<SCRIPT LANGUAGE="JavaScript">
var S = '......'; S = S.split('');//构成秒针的圆点
var M = '.....'; M = M.split('');//构成分针的圆点
var H = '....'; H = H.split('');//构成时针的圆点
var Ybase = 8; //构成秒、分和时针的圆点之间的间隔距离(Y轴)
var Xbase = 8; //构成秒、分和时针的圆点之间的间隔距离(X轴)
var dots = 12; //钟盘上的小时刻度数,通常为12,即1,2,3,...,12
for (var i = 0; i < dots; i++)
{//将小时刻度值(即1,2,3,...,12)分别放入各自的<DIV>块中,且其id属性相同,即dot_Digits
document.write('<DIV id="dot_Digits" style="position:absolute;width:30px;height:30px;font-size:10px;color:black;text-align:center;padding-top:10px">'+(i+1)+'</DIV>');
}
for (i = 0; i < S.length; i++)
{//将构成秒针的圆点分别放入各自的<DIV>块中,且其id属性相同,即s_dots
document.write('<DIV id=s_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:red"></DIV>');
}
for (i = 0; i < M.length; i++)
{//将构成分针的圆点分别放入各自的<DIV>块中,且其id属性相同,即m_dots
document.write('<DIV id=m_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:black"></DIV>');
}
for (i = 0; i < H.length; i++)
{//将构成时针的圆点分别放入各自的<DIV>块中,且其id属性相同,即h_dots
document.write('<DIV id=h_dots style="position:absolute;width:2px;height:2px;font-size:2px;background:black"></DIV>');
}
function clock()
{//显示指针式时钟
var time = new Date ();
var secs = time.getSeconds();
var mins = time.getMinutes();
var hrs = time.getHours();
var Ypos = document.body.scrollTop +80; //把时钟中心设置为距可视区顶边 80 pixel
var Xpos = document.body.scrollLeft +100;//把时钟中心设置为距可视区左边界 100 pixel
for (var i=0; i < dots; ++i)
{//根据新的时钟中心和各个小时刻度值的角度值,设置其新坐标
dot_Digits[i].style.pixelTop = Ypos -15 + 44 * Math.sin(-Math.PI/2+2*Math.PI*(i+1)/12);
dot_Digits[i].style.pixelLeft = Xpos -15 + 44 * Math.cos(-Math.PI/2+2*Math.PI*(i+1)/12);
}
var sec = -Math.PI/2 + 2*Math.PI * secs/60; //秒针角度
for (i=0; i < S.length; i++)
{//根据新的时钟中心和秒针角度,设置秒针上各个圆点的坐标值
s_dots[i].style.pixelTop = Ypos + i * Ybase * Math.sin(sec);
s_dots[i].style.pixelLeft = Xpos + i * Xbase * Math.cos(sec);
}
var min = -Math.PI/2 + 2*Math.PI * mins/60; //分针角度
for (i=0; i < M.length; i++)
{//根据新的时钟中心和分针角度,设置分针上各个圆点的坐标值
m_dots[i].style.pixelTop = Ypos + i * Ybase * Math.sin(min);
m_dots[i].style.pixelLeft = Xpos + i * Xbase * Math.cos(min);
}
var hr = -Math.PI/2 + 2*Math.PI * (hrs+mins/60)/12; //时针角度
for (i=0; i < H.length; i++)
{//根据新的时钟中心和时针角度,设置时针上各个圆点的坐标值
h_dots[i].style.pixelTop = Ypos + i * Ybase*Math.sin(hr);
h_dots[i].style.pixelLeft = Xpos + i * Xbase*Math.cos(hr);
}
setTimeout('clock()', 50);//定时
}
</SCRIPT>
</BODY>
</HTML>
相关文章推荐
- JavaScript获取图片像素颜色并转换为box-shadow显示
- 每天一个JavaScript实例-点击图片显示大图
- 在gallery中浏览图片并设置显示图片倒影
- javascript 小函数 点击图片 在显示区域显示 不跳转
- 使用 javascript 函数 完美控制页面图片显示大小 By shawl.qiu
- JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
- javascript 浏览图片时 即时的显示选择的图片
- sina首页广告效果-JavaScript写让图片/一句话只显示3秒
- JavaScript实现类似Title Alt功能并且可以显示图片。
- javascript批量检查当图片不存在时则显示默认图片的代码
- Javascript 控制图片显示大小函数 By Stabx, 第二版
- javaScript 显示图片的例子
- javascript 火狐(firefox)不显示本地图片问题解决
- JavaScript改变图片透明度,鼠标放上渐渐显示
- JavaScript的代码优化--点击文字显示图片
- JavaScript实现类似TitleAlt功能并且可以显示图片。
- 用javascript实现图片马赛克后显示并切换
- 一个不错的,JavaScript代码,显示首页图片幻灯片效果
- JavaScript 上传图片效果立即显示 JS插件
- javascript动态改变img的src属性图片不显示的解决方法