javascript实现图片切换的幻灯片效果源代码


Posted in Javascript onDecember 12, 2012

网页上有许多图片切换的幻灯片效果,它们大多用flash实现,那javascript能不能实现他们呢,当然可以,我自己写了一个,和大家一同分享

废话少说,看代码

sx.activex.imagefade={ 
init:function(imga,fadeint,fadeoutt){ 
var ti=new Array(); 
for(var i=0;i<imga.length;i++){ 
ti[i]=new Image(); 
ti[i].src=imga[i] 
} 
var div=document.createElement("div"); 
var img=document.createElement("img"); 
img.src=ti[0].src; 
var span=document.createElement("span") 
span.style.backgroundColor="yellow"; 
var a=[]; 
for(var i=0;i<imga.length;i++){ 
a[i]=document.createElement("a") 
a[i].style.backgroundColor="red"; 
a[i].style.width="10px"; 
a[i].style.margin="2px"; 
a[i].href="javascript:void(0)"; 
a[i].onclick=function(r){ 
return function(){ 
var t=100; 
var t1=0; 
var h=window.setInterval(function(){ 
if(t>=0){ 
img.style.filter="alpha(opacity="+t+");"; 
t=t-2;} 
else{ 
window.clearInterval(h); 
img.src=ti[r].src; 
var h1=window.setInterval(function(){ 
if(t1<=100){ 
img.style.filter="alpha(opacity="+t1+");"; 
t1=t1+2;} 
else{ 
window.clearInterval(h1); 
} 
},fadeint); 
} 
},fadeoutt); 
} 
}(i); 
a[i].innerText=i+1; 
span.appendChild(a[i]); 
} 
div.style.position="absolute"; 
div.style.height="200px"; 
div.style.width="200px"; 
div.appendChild(img); 
img.style.height="100%"; 
img.style.width="100%"; 
span.style.position="absolute"; 
span.style.right="10px"; 
span.style.bottom="10px"; 
div.appendChild(span); 
return div; 
} 
}

调用的html
<html> 
<head> 
<title>Untitled Document</title> 
</head> 
<body> 
<script src="kongjian.js"></script> 
<script> 
var a=sx.activex.imagefade.init(["1.jpg","1 (1).jpg"],10,10); 
a.style.height="400px"; 
a.style.width="400px"; 
//a.all[1].style.backgroundColor="green"; 
document.body.appendChild(a); 
</script> 
</body> 
</html>

上面的js函数的第一个参数是你要的图片的地址所组成的数组,第二个参数是图片淡出的timer,第三个参数是淡入的timer.

这段js的关键是a[i].onclick这段代码,注意这里套用了两个setintertval,并用了闭包,在赋值时要当心了.
有什么疑问的话还请多多交流啊

Javascript 相关文章推荐
基于Jquery的实现回车键Enter切换焦点
Sep 14 Javascript
PHP 与 js的通信(via ajax,json)
Nov 16 Javascript
ExtJS的拖拽效果示例
Dec 09 Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
Nov 02 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
Sep 04 Javascript
引用jquery框架后出错的解决方法
Aug 09 Javascript
全面总结Javascript对数组对象的各种操作
Jan 22 Javascript
Vue.js组件tab实现选项卡切换
Mar 23 Javascript
JQuery实现图片轮播效果
May 08 jQuery
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
使用vue + less 实现简单换肤功能的示例
Feb 21 Javascript
JS执行控制之节流模式实例分析
Dec 21 Javascript
javascript跑马灯悬停放大效果实现代码
Dec 12 #Javascript
javascript实现div的拖动并调整大小类似qq空间个性编辑模块
Dec 12 #Javascript
javascript采用数组实现tab菜单切换效果
Dec 12 #Javascript
javascript仿qq界面的折叠菜单实现代码
Dec 12 #Javascript
日历查询的算法 如何计算某一天是星期几
Dec 12 #Javascript
javascript实现日历控件(年月日关闭按钮)
Dec 12 #Javascript
关于js中alert弹出窗口文本换行问题简单详细说明
Dec 11 #Javascript
You might like
php下HTTP Response中的Chunked编码实现方法
2008/11/19 PHP
PHP中空字符串介绍0、null、empty和false之间的关系
2012/09/25 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
js静态作用域的功能。
2006/12/25 Javascript
简单的JS多重继承示例
2008/03/13 Javascript
设置下载不需要倒计时cookie(倒计时代码)
2008/11/19 Javascript
javascript 模式设计之工厂模式学习心得
2010/04/27 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
2015/02/05 Javascript
简介JavaScript中getUTCMonth()方法的使用
2015/06/10 Javascript
基于jQuery实现音乐播放试听列表
2016/04/14 Javascript
第一章之初识Bootstrap
2016/04/25 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
2016/11/29 Javascript
vue之nextTick全面解析
2017/05/17 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
2017/07/31 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
微信小程序实现自动定位功能
2018/10/31 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
vue实现搜索过滤效果
2019/05/28 Javascript
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
js实现简易拖拽的示例
2020/10/26 Javascript
js实现复制粘贴的两种方法
2020/12/04 Javascript
简单谈谈python中的Queue与多进程
2016/08/25 Python
解决django服务器重启端口被占用的问题
2019/07/26 Python
运行时异常与一般异常有何异同?
2014/01/05 面试题
经典的班主任推荐信
2013/10/28 职场文书
五一家具促销方案
2014/01/10 职场文书
考试不及格的检讨书
2014/01/22 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
《孙权劝学》教学反思
2014/04/23 职场文书
员工保密承诺书
2014/05/28 职场文书
2015年党性分析材料
2014/12/19 职场文书
Javascript之datagrid查询详解
2021/09/15 Javascript
JavaScript 中for/of,for/in 的详细介绍
2021/11/17 Javascript
一行Python命令实现批量加水印
2022/04/07 Python