JS实现的多张图片轮流播放幻灯片效果
本文实例讲述了JS实现的多张图片轮流播放幻灯片效果。分享给大家供大家参考,具体如下:
<bodystyle="width:715px;height:95px;"> <scriptlanguage="javascript"type="text/javascript"> <!-- /************************************************** 名称:图片轮播类 创建时间:2010-07-11zhangty 示例: 页面中已经存在名为imgPlayer(或者别的ID也行)的节点. PImgPlayer.addItem("test","http://www.pomoho.com","http://static.pomoho.com/static/samesong/images/logo5.jpg"); PImgPlayer.addItem("test2","http://www.pomoho.com.cn","http://static.pomoho.com/static/samesong/images/logo4.jpg"); PImgPlayer.addItem("test3","http://www.pomoho.com.cn","http://static.pomoho.com/static/samesong/images/logo3.jpg"); PImgPlayer.init("imgPlayer",200,230); 备注: 适用于一个页面只有一个图片轮播的地方. ***************************************************/ varPImgPlayer={ _timer:null, _items:[], _container:null, _index:0, _imgs:[], intervalTime:5000,//轮播间隔时间 init:function(objID,w,h,time){ this.intervalTime=time||this.intervalTime; this._container=document.getElementById(objID); this._container.style.display="block"; this._container.style.width=w+"px"; this._container.style.height=h+"px"; this._container.style.position="relative"; this._container.style.overflow="hidden"; //this._container.style.border="1pxsolid#fff"; varlinkStyle="display:block;TEXT-DECORATION:none;"; if(document.all){ linkStyle+="FILTER:"; linkStyle+="progid:DXImageTransform.Microsoft.Barn(duration=0.5,motion='out',orientation='vertical')"; linkStyle+="progid:DXImageTransform.Microsoft.Barn(duration=0.5,motion='out',orientation='horizontal')"; linkStyle+="progid:DXImageTransform.Microsoft.Blinds(duration=0.5,bands=10,Direction='down')"; linkStyle+="progid:DXImageTransform.Microsoft.CheckerBoard()"; linkStyle+="progid:DXImageTransform.Microsoft.Fade(duration=0.5,overlap=0)"; linkStyle+="progid:DXImageTransform.Microsoft.GradientWipe(duration=1,gradientSize=1.0,motion='reverse')"; linkStyle+="progid:DXImageTransform.Microsoft.Inset()"; linkStyle+="progid:DXImageTransform.Microsoft.Iris(duration=1,irisStyle=PLUS,motion=out)"; linkStyle+="progid:DXImageTransform.Microsoft.Iris(duration=1,irisStyle=PLUS,motion=in)"; linkStyle+="progid:DXImageTransform.Microsoft.Iris(duration=1,irisStyle=DIAMOND,motion=in)"; linkStyle+="progid:DXImageTransform.Microsoft.Iris(duration=1,irisStyle=SQUARE,motion=in)"; linkStyle+="progid:DXImageTransform.Microsoft.Iris(duration=0.5,irisStyle=STAR,motion=in)"; linkStyle+="progid:DXImageTransform.Microsoft.RadialWipe(duration=0.5,wipeStyle=CLOCK)"; linkStyle+="progid:DXImageTransform.Microsoft.RadialWipe(duration=0.5,wipeStyle=WEDGE)"; linkStyle+="progid:DXImageTransform.Microsoft.RandomBars(duration=0.5,orientation=horizontal)"; linkStyle+="progid:DXImageTransform.Microsoft.RandomBars(duration=0.5,orientation=vertical)"; linkStyle+="progid:DXImageTransform.Microsoft.RandomDissolve()"; linkStyle+="progid:DXImageTransform.Microsoft.Spiral(duration=0.5,gridSizeX=16,gridSizeY=16)"; linkStyle+="progid:DXImageTransform.Microsoft.Stretch(duration=0.5,stretchStyle=PUSH)"; linkStyle+="progid:DXImageTransform.Microsoft.Strips(duration=0.5,motion=rightdown)"; linkStyle+="progid:DXImageTransform.Microsoft.Wheel(duration=0.5,spokes=8)"; linkStyle+="progid:DXImageTransform.Microsoft.Zigzag(duration=0.5,gridSizeX=4,gridSizeY=40);width:100%;height:100%"; } // varulStyle="margin:0;width:"+w+"px;position:absolute;z-index:999;right:5px;FILTER:Alpha(Opacity=30,FinishOpacity=90,Style=1);overflow:hidden;bottom:-1px;height:16px;border-right:1pxsolid#fff;"; // varliStyle="margin:0;list-style-type:none;margin:0;padding:0;float:right;"; // varbaseSpacStyle="clear:both;display:block;width:23px;line-height:18px;font-size:12px;FONT-FAMILY:'宋体';opacity:0.6;"; baseSpacStyle+="border:1pxsolid#fff;border-right:0;border-bottom:0;"; baseSpacStyle+="color:#fff;text-align:center;cursor:pointer;"; // varulHTML=""; for(vari=this._items.length-1;i>=0;i--){ varspanStyle=""; if(i==this._index){ spanStyle=baseSpacStyle+"background:#ff0000;";//初始化底部数字的颜色 }else{ spanStyle=baseSpacStyle+"background:#c0c0c0;";//初始化底部数字的背景颜色 } ulHTML+="<listyle=\""+liStyle+"\">"; ulHTML+="<spanonmouseover=\"PImgPlayer.mouseOver(this);\"onmouseout=\"PImgPlayer.mouseOut(this);\"style=\""+spanStyle+"\"onclick=\"PImgPlayer.play("+i+");returnfalse;\"herf=\"javascript:;\"title=\""+this._items[i].title+"\">"+(i+1)+"</span>"; ulHTML+="</li>"; } // varhtml="<ahref=\""+this._items[this._index].link+"\"title=\""+this._items[this._index].title+"\"target=\"_blank\"style=\""+linkStyle+"\"></a><ulstyle=\""+ulStyle+"\">"+ulHTML+"</ul>"; this._container.innerHTML=html; varlink=this._container.getElementsByTagName("A")[0]; link.style.width=w+"px"; link.style.height=h+"px"; link.style.background='url('+this._items[0].img+')no-repeatcentercenter'; // this._timer=setInterval("PImgPlayer.play()",this.intervalTime); }, addItem:function(_title,_link,_imgURL){ this._items.push({title:_title,link:_link,img:_imgURL}); varimg=newImage(); img.src=_imgURL; this._imgs.push(img); }, play:function(index){ if(index!=null){ this._index=index; clearInterval(this._timer); this._timer=setInterval("PImgPlayer.play()",this.intervalTime); }else{ this._index=this._index<this._items.length-1?this._index+1:0; } varlink=this._container.getElementsByTagName("A")[0]; if(link.filters){ varren=Math.floor(Math.random()*(link.filters.length)); link.filters[ren].Apply(); link.filters[ren].play(); } link.href=this._items[this._index].link; link.title=this._items[this._index].title; link.style.background='url('+this._items[this._index].img+')no-repeatcentercenter'; // varliStyle="margin:0;list-style-type:none;margin:0;padding:0;float:right;"; varbaseSpacStyle="clear:both;display:block;width:23px;line-height:18px;font-size:12px;FONT-FAMILY:'宋体';opacity:0.6;"; baseSpacStyle+="border:1pxsolid#fff;border-right:0;border-bottom:0;"; baseSpacStyle+="color:#fff;text-align:center;cursor:pointer;"; varulHTML=""; for(vari=this._items.length-1;i>=0;i--){ varspanStyle=""; if(i==this._index){ spanStyle=baseSpacStyle+"background:#ff0000;";//数字的颜色 }else{ spanStyle=baseSpacStyle+"background:#c0c0c0;";//数字的背景颜色 } ulHTML+="<listyle=\""+liStyle+"\">"; ulHTML+="<spanonmouseover=\"PImgPlayer.mouseOver(this);\"onmouseout=\"PImgPlayer.mouseOut(this);\"style=\""+spanStyle+"\"onclick=\"PImgPlayer.play("+i+");returnfalse;\"herf=\"javascript:;\"title=\""+this._items[i].title+"\">"+(i+1)+"</span>"; ulHTML+="</li>"; } this._container.getElementsByTagName("UL")[0].innerHTML=ulHTML; }, mouseOver:function(obj){ vari=parseInt(obj.innerHTML); if(this._index!=i-1){ obj.style.color="#ff0000"; } }, mouseOut:function(obj){ obj.style.color="#fff"; } } --> </script> <divid="imgADPlayer"></div> <script> PImgPlayer.addItem("拉手网","http://www.lashou.com/","./images/1001.jpg"); PImgPlayer.addItem("糯米网","http://www.nuomi.com/","./images/1002.jpg"); PImgPlayer.addItem("美团网","http://www.meituan.com/","./images/1003.jpg"); PImgPlayer.init("imgADPlayer",715,95); </script> </body>
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。