自己写的一个简单mt图片幻灯类

本文介绍了一种使用JavaScript实现轮播图的方法。通过创建自定义类来管理轮播导航、盒子、图片切换等功能,实现了一个可以自动播放并手动选择图片的轮播组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

<script type="text/javascript"> 
var picMovie = new Class({
    
    initialize : 
function(movieNav, movieBox, divId, aId){
        
this.movieNav = movieNav;
        
this.movieBox = movieBox;
        
this.divId = divId;
        
this.aId = aId;
        
var divs = $(movieBox).getElementsByTagName('div'); 
        
var num = divs.length; 
        
for (i=0; i<num; i++)
            divs[i].id 
= divId + [i+1]; 
            divs[i].style.display 
= 'none'
        }
 
        divs[
0].style.display='block'
        
for (k = 0; k<num ; k++){
            
if (k == 0){
                
var a1 = new Element('a',{'class':'on','id':aId+[k+1]});
                
var li1 = new Element('li',{'class':divId + [k+1]}).adopt(a1).injectInside(movieNav);    
            }
else{
                
var a = new Element('a',{'id': aId+[k+1]}).injectInside($(movieNav));
                
var li = new Element('li',{'class':divId + [k+1]}).adopt(a).injectInside(movieNav);
            }
    
        }

    }

    
    movieStart : 
function(){
            
var num = $(this.movieBox).getElementsByTagName('div').length; 
            
this.moveRight(this.movieNav, this.movieBox, this.divId + num);
    
    }

    
    moveRight : 
function(movieNav,movieBox,lastLinkClass){
    
                
var links=$(movieNav).getElementsByTagName('a');
                
for(i=0;i<links.length;i++){
                    
if (links[i].className=='on'){
                        
if (links[i].parentNode.className==lastLinkClass){                    //如果是最后一个,则转到第一个
                            links[i].className='';
                            links[
0].className='on';
                            
var baos=$(movieBox).getElementsByTagName('div');
                            
for(i=0; i<baos.length; i++){
                            baos[i].style.display
='none';
                            }

                            baos[
0].style.display='block';
                    
                        }

                        
else{                                                        //正常向右移动
                            links[i].className='';
                            links[i
+1].className='on';
                            
var current=links[i+1].parentNode.className; //现在应该显示的内容id
                            var baos=$(movieBox).getElementsByTagName('div');
                            
for(i=0; i<baos.length; i++){
                            baos[i].style.display
='none';
                            }

                            $(current).style.display
='block';
                       }

                    }

                }

            }
,
    display : 
function(){
    
        
var myMovie = this.movieStart.bind(this);
        setInterval(myMovie, 
2000);
    
    }

    
}
)
picMovie.implement(
new Options);
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值