用一段js程序来实现动画功能


Posted in Javascript onMarch 06, 2007

自从ie对flash的显示方式进行改变后,flash这个东西一下子变成了一个鸡肋。
许许多多的网站都撤掉了以前的flash动画,改用一段js程序来实现动画功能.

csdn首页也是如此。。我无聊,自己写了一个,特点如下:

1.对搜索引擎友好
2.对美工友好,因为数据和代码是分开的,完全不懂js的都可以用fontpage修改动画内容

可以把js代码保存为一个文件 然后<script src="1.js"></script>,然后无须修改代码一个字母
就可以在多个页面中实现动画了

代码如下:

<style>  
#g_div{text-align:right;overflow:hidden}  
.b{width:24px; height:16px; background:#737373; font-size:14px; font-weight:bold; color:#fff; text-decoration:none;margin-left:1px}  
.b:hover{width:24px; height:16px; background:#780001; font-size:14px; font-weight:bold; color:#fff; text-decoration:none;margin-left:1px}  
.bhover{width:24px; height:16px; background:#780001; font-size:14px; font-weight:bold; color:#fff; text-decoration:none;margin-left:1px}  
</style>  <div id="g_div" style="width:270px;height:252px"><a   
href="#" target=_blank><img   
id="g_img" style="FILTER:revealTrans(duration=1,transition=23);width:266px;height:220px;border:1px green solid" src="http://zi.csdn.net/xian.gif">  
</a><a   
href="http://www.baidu.com/" for="http://zi.csdn.net/xian.gif"  target="_blank">1.CSDN程序员</a><a   
href="http://www.126.com/" for="http://zi.csdn.net/microsoft280_187.jpg"  target="_blank">2.CSDN程序员</a><a   
href="http://mp3.baidu.com/"  for="http://zi.csdn.net/live.gif"   target="_blank">3.CSDN程序员</a><a   
href="http://post.baidu.com/" for="http://zi.csdn.net/new-mba.gif"  target="_blank">4.CSDN程序员</a><a   
href="http://top.baidu.com/" for="http://zi.csdn.net/book.jpg"  target="_blank">5.CSDN程序员</a>  
</div>  
<script language="JavaScript">  
function f(){  
 var g_sec=3          //几秒后切换图片  
 var g_items=new Array()  
 var g_div=document.getElementById("g_div")   
 var g_img=document.getElementById("g_img")   
 var g_imglink=g_img.parentElement  
 var arr=g_div.getElementsByTagName("A")  
 var arr_length=arr.length  
 var g_index=1   
 var show_img=function(n){     
   if (/\d+/.test(n)){    
  var prev=g_index+1  
  g_index=n-1  
   }else{      
  var prev=(g_index>arr.length)?(arr_length-1):g_index+1  
  g_index=(g_index<arr_length-2)?(++g_index):0  
   }    
   if (document.all){  
    g_img.filters.revealTrans.Transition=23;  
   g_img.filters.revealTrans.apply();  
   g_img.filters.revealTrans.play();  
    }  
  arr[prev].className="b"     
  arr[g_index+1].className="bhover"  
  g_img.src=g_items[g_index].img.src  
  g_img.title=g_items[g_index].txt  
  g_imglink.href=g_items[g_index].url     
  g_imglink.target=g_items[g_index].target  
 }  
 for(var i=1;i<arr_length;i++){  
  g_items.push({txt:arr[i].innerHTML,  
   url:arr[i].href,  
   target:arr[i].target,  
   img:(function(){var o=new Image;o.src=arr[i].getAttribute("for");return o})()})   
  arr[i].title=arr[i].innerHTML  
  arr[i].innerHTML=[i," "].join("")  
  arr[i].className="b"  
  arr[i].onclick=function(){  
   event.returnValue=false;   
   show_img(event.srcElement.innerText)    
  }  
 }  
 show_img(1)    
 var t=window.setInterval(show_img,g_sec*1000)   
 g_img.onmouseover=function(){window.clearInterval(t)}  
 g_img.onmouseout=function(){t=window.setInterval(show_img,g_sec*1000)}    
}  
window.attachEvent("onload",f)   
</script> 
Javascript 相关文章推荐
简单实用的全选反选按钮例子
Oct 18 Javascript
关于onchange事件在IE和FF下的表现及解决方法
Mar 08 Javascript
javascript回车完美实现tab切换功能
Mar 13 Javascript
node.js中的fs.futimesSync方法使用说明
Dec 17 Javascript
javascript实现拖放效果
Dec 16 Javascript
卸载安装Node.js与npm过程详解
Aug 15 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
Sep 04 Javascript
JS中数组重排序方法
Nov 11 Javascript
解决vue router组件状态刷新消失的问题
Aug 01 Javascript
react native 原生模块桥接的简单说明小结
Feb 26 Javascript
Javascript Web Worker使用过程解析
Mar 16 Javascript
vue计算属性+vue中class与style绑定(推荐)
Mar 30 Javascript
用javascript动态调整iframe高度的方法
Mar 06 #Javascript
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
Mar 06 #Javascript
限制文本字节数js代码
Mar 06 #Javascript
用Div仿showModalDialog模式菜单的效果的代码
Mar 05 #Javascript
HTML-CSS群中单选引发的“事件”
Mar 05 #Javascript
用javascript实现页面打印的三种方法
Mar 05 #Javascript
一个可以显示阴历的JS代码
Mar 05 #Javascript
You might like
php多功能图片处理类分享(php图片缩放类)
2014/03/14 PHP
PHP的error_reporting错误级别变量对照表
2014/07/08 PHP
smarty模板引擎之配置文件数据和保留数据
2015/03/30 PHP
[原创]php使用curl判断网页404(不存在)的方法
2016/06/23 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
2016/12/05 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
初步了解javascript面向对象
2015/11/09 Javascript
Node.js实现注册邮箱激活功能的方法示例
2018/03/23 Javascript
深入理解JavaScript 中的执行上下文和执行栈
2018/10/23 Javascript
微信小程序时间选择插件使用详解
2018/12/28 Javascript
Node.js Event Loop各阶段讲解
2019/03/08 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
python Django连接MySQL数据库做增删改查
2013/11/07 Python
Python随机生成数模块random使用实例
2015/04/13 Python
Python简单进程锁代码实例
2015/04/27 Python
python实现爬虫统计学校BBS男女比例(一)
2015/12/31 Python
python中如何正确使用正则表达式的详细模式(Verbose mode expression)
2017/11/08 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
python 对类的成员函数开启线程的方法
2019/01/22 Python
Flask框架中request、请求钩子、上下文用法分析
2019/07/23 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
详解css3中的伪类before和after常见用法
2020/11/17 HTML / CSS
用html5绘制折线图的实例代码
2016/03/25 HTML / CSS
JustFab加拿大:女鞋、靴子、手袋和服装在线
2018/05/18 全球购物
阿拉伯时尚购物网站:Nisnass
2021/02/07 全球购物
学前教育专业毕业生自荐信
2013/10/03 职场文书
企业员工培训感言
2014/02/26 职场文书
个人师德师风自我剖析材料
2014/09/29 职场文书
工厂标语大全
2014/10/06 职场文书
无犯罪记录证明样本
2015/06/16 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
教你怎么用Python实现多路径迷宫
2021/04/29 Python
js实现模拟购物商城案例
2021/05/18 Javascript
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android