层的滑动隐藏效果

// JScript 文件
//层的滑动隐藏效果

function Hidden()
{
    this.ID = document.getElementById(arguments[0]);//目标层名称(需要滚动部分的层名称)
    if(!this.ID)
    {
        alert('您要设置的"' + arguments[0] +'"初始化错误/r/n请检查标签ID设置是否正确!');
        this.ID = -1;
        return;
    }
    
    this.Speed=this.Space=this.Width=this.Height=this.Direction=this.starcount=this.MyDirection=0;
    this.txt=0;
    this.DivNone="";
        
    if(typeof arguments[1] == "number")this.Speed = arguments[1];//间歇时间(每多少秒调用一次)
    if(typeof arguments[2] == "number")this.Space = arguments[2];//位移幅度(步长)一次移动多少像素
    if(typeof arguments[3] == "number")this.Width = arguments[3];//滚动隐藏层的宽 (宽和高只需要给一种赋值)
    if(typeof arguments[4] == "number")this.Height = arguments[4];//滚动隐藏层的高 (宽和高只需要给一种赋值)
    if(typeof arguments[5] == "number")this.Direction = arguments[5];//滚动方向   (0为上下 1为左右)
    if(typeof arguments[6] == "string")this.ObjectName = arguments[6];    //本类的实例对象名 如:var mq=new Marquee("List1","ISL_Cont","dotList"); 中的mq
    if(typeof arguments[7] == "string")this.DivNone = arguments[7];    //本类的实例对象名 如:var mq=new Marquee("List1","ISL_Cont","dotList"); 中的mq
    
    this.End=null;        
    if(this.Direction==0)
    {    
        this.starcount = this.ID.scrollHeight;  
        this.Space = this.ID.scrollHeight;
    }
    else if(this.Direction==1)
    {
        this.starcount = this.ID.scrollWidth;       
    }
}

Hidden.prototype.Start=function()
{    
    if(this.Direction==0)
    {
        this.UpDown();  
    }
    else if(this.Direction==1)
    {
        this.LeftRight();
    }
}

Hidden.prototype.ChangleTxt=function(name1,name2)
{

    if(this.txt==0)
    {
         document.getElementById(name1).className="none";
         document.getElementById(name2).className="";
         this.txt=1;
    }
    else
    {
         document.getElementById(name1).className="on";
         document.getElementById(name2).className="none";
         this.txt=0;
    }
}

Hidden.prototype.Scroll=function()
{    
    switch(this.MyDirection)
    {
        case 0 :
            if(this.starcount >= this.Height)
            {
                 return;
            }
            else
            {
                if(this.starcount>=this.Height)
                {
                    this.starcount =this.Height;
                }
                this.starcount +=this.Space;
                this.ID.style.height=this.starcount+"px";
                this.End=setTimeout(this.ObjectName + ".Scroll()",this.speed);
            }
            break ;
        case 1 :
            if(this.starcount <= 0)
            {
                 return;
            }
            else
            {                
                 this.starcount -=this.Space;
                 if(this.starcount<=0)
                 {
                    this.starcount = 0;
                 }
                 this.ID.style.height=this.starcount+"px";
                 this.End=setTimeout(this.ObjectName + ".Scroll()",this.speed);
                 
            }
            break ;
        case 2 :
             if(this.starcount >= this.Width)
            {                
                 this.ID.style.width=this.Width + "px";
                 return;
            }
            else
            {
               this.starcount +=this.Space;
               this.ID.style.width=this.starcount+"px";
               this.End=setTimeout(this.ObjectName + ".Scroll()",this.speed);
            }
            break ;
        case 3 :
            if(this.starcount <= 0)
            {
                 this.ID.style.width="0px";
                 return;
            }
            else
            {
               this.starcount -=this.Space;
               if(this.starcount<-this.Height)
               this.starcount = -this.Height;
               this.ID.style.width=this.starcount + "px";
               this.End=setTimeout(this.ObjectName + ".Scroll()",this.speed);
           }
           break;
    }
}

Hidden.prototype.UpDown=function()
{    
    if(this.starcount<this.Height)
    {        
        this.MyDirection = 0;        
        if(this.Divnone!=""&&document.getElementById(this.DivNone)!=null)
        {
            document.getElementById(this.DivNone).style.display="block";            
        }
        this.Scroll();
       
    }
    else if(this.starcount>=this.Height)
    {        
        this.MyDirection = 1;
        if(this.Divnone!=""&&document.getElementById(this.DivNone)!=null)
        {
            document.getElementById(this.DivNone).style.display = "none";
        }
        this.Scroll();
       
    }    
}


Hidden.prototype.LeftRight=function()
{
    if(this.starcount<=this.Width)
    {
        this.MyDirection = 2;
        
        
            this.Scroll();
        
    }
    else if(this.starcount>=this.Width)
    {
        this.MyDirection = 3;
        
        
            this.Scroll();
        
    }
}

Hidden.prototype.SetTime = function(StarSpeed,StopSpeed)
{
    setTimeout(this.ObjectName + ".Start()",StarSpeed);
    setTimeout(this.ObjectName + ".Start()",StarSpeed +StopSpeed);
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值