Google韩国首页图标动画效果


Posted in Javascript onAugust 26, 2007

一个蛮漂亮的动画效果。是Google韩国首页上的。

原版:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>测试效果</title>
<style type="text/css">
<!--
body {text-align:center}
table {border:1px solid #eeeeee;padding:3px 0;border-bottom-width:5px}
.icon td {width:50px;height:37px;background-image:url(http://www.dnew.cn/attachment/1188099824_0.gif)}
.capt td {font:normal 11px verdana;padding:2px 0}
.a {background-position-y:0px}
.b {background-position-y:-37px}
.c {background-position-y:-74px}
.d {background-position-y:-111px}
.e {background-position-y:-148px}
.f {background-position-y:-185px}
.g {background-position-y:-222px}
.f1 {background-position-x:0px}
.f2 {background-position-x:-51px}
.f3 {background-position-x:-101px}
.f4 {background-position-x:-153px}
.f5 {background-position-x:-205px}
.f6 {background-position-x:-257px}
.f7 {background-position-x:-309px}
-->
</style>
<script language="javascript">
window.onload=function(){
 var tt=document.getElementsByTagName('table')[0];
 var cs=tt.rows[1].cells,ct=tt.rows[0].cells;
 for(var i=0;i<cs.length;i++)
   cssAni(cs[i],ct[i],7);
}
function cssAni(osrc,otarget,num,duration){
 var t=null,c=1,d=0,n=0,i=Math.floor((duration||300)/num);
 var s=otarget.className.replace(/.$/,''),r=/over/;
 osrc.onmouseover=osrc.onmouseout=function(e){
   n=r.test((e||event).type)?1:-1;
   if(!t) t=setInterval(function(){
     if((c==1||c==num)&&((d==n||c+n<1)||!(d=n)))
         return clearInterval(t),t=null;
     otarget.className=s+(c+=d);
   },i);
 };
}
</script>
</head>
<body>
<table>
 <tr class='icon'>
   <td class='a f1'></td>
   <td class='b f1'></td>
   <td class='c f1'></td>
   <td class='d f1'></td>
   <td class='e f1'></td>
   <td class='f f1'></td>
   <td class='g f1'></td>
 </tr>
 <tr class='capt'>
   <td><a href='#;'>A</a></td>
   <td><a href='#;'>B</a></td>
   <td><a href='#;'>C</a></td>
   <td><a href='#;'>D</a></td>
   <td><a href='#;'>E</a></td>
   <td><a href='#;'>F</a></td>
   <td><a href='#;'>G</a></td>
 </tr>
</table>
</body>
</html>

DIV版

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<style type="text/css">
<!--
body {text-align:center}
div { width:381px; border:1px solid #eeeeee;padding:3px 0;border-bottom-width:5px}
label {display:block; float:left; width:50px;height:37px;background-image:url(http://www.dnew.cn/attachment/1188099824_0.gif)}
p { display:block; margin-TOP:-30PX; padding-top:30px; float:left; width:50px; height:auto; font:normal 11px verdana; cursor:pointer;}
.a {background-position-y:0px}
.b {background-position-y:-37px}
.c {background-position-y:-74px}
.d {background-position-y:-111px}
.e {background-position-y:-148px}
.f {background-position-y:-185px}
.g {background-position-y:-222px}
.f1 {background-position-x:0px}
.f2 {background-position-x:-51px}
.f3 {background-position-x:-101px}
.f4 {background-position-x:-153px}
.f5 {background-position-x:-205px}
.f6 {background-position-x:-257px}
.f7 {background-position-x:-309px}
-->
</style>

<script language="javascript">
window.onload=function(){
 var tt=document.getElementsByTagName('div')[0];
 var cs=tt.getElementsByTagName('label'),ct=tt.getElementsByTagName('p');

 for(var i=0;i<cs.length;i++)
   cssAni(ct[i],cs[i],7);
}
function cssAni(osrc,otarget,num,duration){
 var t=null,c=1,d=0,n=0,i=Math.floor((duration||300)/num);
 var s=otarget.className.replace(/.$/,''),r=/over/;
 osrc.onmouseover=osrc.onmouseout=function(e){
   n=r.test((e||event).type)?1:-1;
   if(!t) t=setInterval(function(){
     if((c==1||c==num)&&((d==n||c+n<1)||!(d=n)))
         return clearInterval(t),t=null;
     otarget.className=s+(c+=d);
   },i);
 };
}
</script>

</head>

<body>
<div>
<label class='a f1'></label><label class='b f1'></label><label class='c f1'></label><label class='d f1'></label><label class='e f1'></label><label class='f f1'></label><label class='g f1'></label>
<p>A</p><p>B</p><p>C</p><p>D</p><p>E</p><p>F</p><p>G</p>
</div>
</body>
</html>

Javascript 相关文章推荐
使两个iframe的高度与内容自适应,且相等
Nov 20 Javascript
javascript 混合的构造函数和原型方式,动态原型方式
Dec 07 Javascript
js事件(Event)知识整理
Oct 11 Javascript
深入理解Javascript作用域与变量提升
Dec 09 Javascript
js实现网页抽奖实例
Aug 05 Javascript
Bootstrap学习笔记之js组件(4)
Jun 12 Javascript
AngularJS Ajax详解及示例代码
Aug 17 Javascript
Angular设置title信息解决SEO方面存在问题
Aug 19 Javascript
微信小程序(应用号)简单实例应用及实例详解
Sep 26 Javascript
js正则表达式验证密码强度【推荐】
Mar 03 Javascript
VSCode使用之Vue工程配置eslint
Apr 30 Javascript
80行代码写一个Webpack插件并发布到npm
May 24 Javascript
javascript在一段文字中的光标处插入其他文字
Aug 26 #Javascript
有一段有意思的代码-javascript现实多行信息
Aug 26 #Javascript
LBS blog sql注射漏洞[All version]-官方已有补丁
Aug 26 #Javascript
javascript下操作css的float属性的特殊写法
Aug 22 #Javascript
ASP中用Join和Array,可以加快字符连接速度的代码
Aug 22 #Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 #Javascript
lib.utf.js
Aug 21 #Javascript
You might like
php自动获取字符串编码函数mb_detect_encoding
2011/05/31 PHP
php继承的一个应用
2011/09/06 PHP
防止本地用户用fsockopen DDOS攻击对策
2011/11/02 PHP
PHP 5.3新增魔术方法__invoke概述
2014/07/23 PHP
jquery判断复选框是否被选中的方法
2015/10/16 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
浅谈javascript中的constructor
2016/06/08 Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
2016/10/27 Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
2016/11/01 Javascript
vuex学习之Actions的用法详解
2017/08/29 Javascript
Vue项目分环境打包的实现步骤
2018/04/02 Javascript
解析vue data不可以使用箭头函数问题
2018/07/03 Javascript
使用vuepress搭建静态博客的示例代码
2019/02/14 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
微信小程序点击保存图片到本机功能
2019/12/13 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
python自动化测试实例解析
2014/09/28 Python
编写简单的Python程序来判断文本的语种
2015/04/07 Python
python hook监听事件详解
2018/10/25 Python
对python 调用类属性的方法详解
2019/07/02 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
ALDI奥乐齐官方海外旗舰店:德国百年超市
2017/12/27 全球购物
美国保健品专家:Life Extension
2018/05/04 全球购物
美国购买新书和二手书网站:Better World Books
2018/10/31 全球购物
升职自荐书范文
2013/11/28 职场文书
初中女生自我鉴定
2013/12/19 职场文书
优秀部门获奖感言
2014/02/14 职场文书
新闻学专业大学生职业生涯规划范文
2014/03/02 职场文书
装修协议书范本
2014/04/21 职场文书
群众路线个人整改措施
2014/10/24 职场文书
2014年服务行业工作总结
2014/11/18 职场文书
亚布力滑雪场导游词
2015/02/09 职场文书
幽默导游词开场白
2015/05/29 职场文书
财务年终工作总结大全
2019/06/20 职场文书
创业项目大全(适合在家创业的项目)
2019/08/15 职场文书