用一段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 相关文章推荐
JS面向对象、prototype、call()、apply()
May 14 Javascript
Javascript中的delete介绍
Sep 02 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
Mar 25 Javascript
浅谈javascript中的DOM方法
Jul 16 Javascript
javascript中SetInterval与setTimeout的定时器用法
Aug 24 Javascript
jQuery实现ajax调用WCF服务的方法(附带demo下载)
Dec 04 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
Aug 10 Javascript
js判断所有表单项不为空则提交表单的实现方法
Sep 09 Javascript
详解webpack es6 to es5支持配置
May 04 Javascript
Vue自定义指令封装节流函数的方法示例
Jul 09 Javascript
送你43道JS面试题(收藏)
Jun 17 Javascript
详解Vue slot插槽
Nov 20 Vue.js
用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
上海永华YH-R296(华普R-96)12波段立体声收音机的分析和打理
2021/03/02 无线电
PHP几个数学计算的内部函数学习整理
2011/08/06 PHP
深入PHP数据缓存的使用说明
2013/05/10 PHP
PHP 微信支付类 demo
2015/11/30 PHP
基于Codeigniter框架实现的student信息系统站点动态发布功能详解
2017/03/23 PHP
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
jQuery学习笔记之 Ajax操作篇(二) - 数据传递
2014/06/23 Javascript
JavaScript实现带标题的图片轮播特效
2015/05/20 Javascript
JavaScript同源策略和跨域访问实例详解
2018/04/03 Javascript
解决vue-router 二级导航默认选中某一选项的问题
2019/11/01 Javascript
js实现随机点名程序
2020/09/17 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
Python实现Linux中的du命令
2017/06/12 Python
遗传算法之Python实现代码
2017/10/10 Python
Python面向对象之继承代码详解
2018/01/29 Python
Python OpenCV处理图像之滤镜和图像运算
2018/07/10 Python
用python打印菱形的实操方法和代码
2019/06/25 Python
python算法与数据结构之单链表的实现代码
2019/06/27 Python
python通过http下载文件的方法详解
2019/07/26 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
浅谈django2.0 ForeignKey参数的变化
2019/08/06 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
pycharm的python_stubs问题
2020/04/08 Python
迪卡侬印尼体育用品商店:Decathlon印尼
2020/03/11 全球购物
Java程序员面试题
2013/07/15 面试题
《小草和大树》教学反思
2014/02/16 职场文书
财务科科长岗位职责
2014/03/10 职场文书
篮球比赛口号
2014/06/10 职场文书
邀请函怎么写
2015/01/30 职场文书
实习班主任自我评价
2015/03/11 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
建国大业电影观后感
2015/06/01 职场文书
家访教师心得体会
2016/01/23 职场文书
合作协议书格式范本
2016/03/21 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python