// JavaScript Document
 var re = 0;
      function scrollImg(){
        this.interval = 0;         //跳转间隔，如果为0,代表不进行自动跳转
        this.intScrollType = 0 ;      //定义图片滚动方式，0,直接跳转，
                                      //图片滚动，1,向左，-1,向右，2,向上，-2,向下
                                      //由小到大入(由大到小出)，,5中间，6左上角，7右上角，8右下角，9左下角
                                      //>100使用滤镜
        this.intDuration = 2000;      // 设定图片变更完成所用总时间，以毫秒为单位；
        this.intStepPixel = 20;       //设定每次步进所跳跃的像素值;
        this.currentImg = 0;          //设定从哪个图开始滚动；
        this.boxId = "autoChangeBox"; //设定容器ID
        this.strFilter = "";          //使用的滤镜文本
        
        this.strEvent = "mouseover"
        
        this.intPerStepTime = 0 ;     //在转变过程中，每步所用时间，由算得出，不用设置，如果时间间隔低于10，则会按10计算
        this.scrollDeriction = "";    //图片的滚动方面，由程序自行控制;
        this.showTarget = "";         //将要显示的目标图片，
        this.strTimeout = "";         //正在执行的Timeout文本
      }
      //初始化对象
      scrollImg.prototype.initi = function(objName){
        with(this){
          this.box = document.getElementById(boxId);
          
          if(!box) return false;
          if(box.getElementsByTagName("dl").length!=1) return false;
          this.objDl = box.getElementsByTagName("dl")[0];
          this.arrDd = objDl.getElementsByTagName("dd");
          this.imgCount = arrDd.length;
          if(imgCount<2) return true;
          this.selfObj = eval(objName);
          this.selfName = objName;
          this.boxWidth = box.clientWidth;
          this.boxHeight = box.clientHeight;
          this.boxWidth = arrDd[0].offsetWidth;
          this.boxHeight = arrDd[0].offsetHeight;
                    
          this.dt = objDl.getElementsByTagName("dt").length==0?objDl.insertBefore(document.createElement("dt"),arrDd[0]):objDl.getElementsByTagName("dt")[0];
          dt.style.zIndex = "99";
          if(dt.getElementsByTagName("a").length==0){
            //添加头部按扭
            //添加 123 的 数字
            this.objSpan = dt.appendChild(document.createElement("span"));
            for(var i=0;i<imgCount;i++){
              var aTemp = objSpan.appendChild(document.createElement("a"));
              aTemp.appendChild(document.createTextNode(i+1));
              aTemp.setAttribute("href","#");
            }
            //添加尾部按钮
          }
          this.arrA = dt.getElementsByTagName("a");
          for(var i=0;i<arrA.length;i++){
            if(strEvent=="click")
            {
              (function(x){arrA[x].onclick = function(){clickA(x);eval("this.blur();");return false;}})(i)
            }
            else if(strEvent=="mouseover")
            {
              (function(x){arrA[x].onmouseover = function(){clickA(x);eval("this.blur();");return false;}})(i)
            }
          }
          for(var i=0;i<imgCount;i++){
            addDdEvent(arrDd[i]);
            arrDd[i].style.position = "absolute";
            arrDd[i].style.overflow = "hidden";
//            arrDd[i].style.top = "0";
//            arrDd[i].style.left = "0";
//            arrDd[i].style.right = "0";
//            arrDd[i].style.bottom = "0";
          }
          showImg(currentImg);
        }
      }
      //创建一个新的Div容器
      scrollImg.prototype.createNewDiv = function(){
        with(this){
          if(typeof(objDiv) == "object") objDl.removeChild(objDiv)
          this.objDiv = objDl.appendChild(document.createElement("div"));
          if(typeof(objDiv1) == "object") objDl.removeChild(objDiv1)
          this.objDiv1 = objDl.appendChild(document.createElement("div"));
          var arrTemp = [objDiv,objDiv1]
          for(var i=0;i<arrTemp.length;i++){
            arrTemp[i].style.zIndex = 98-i;
            arrTemp[i].style.display = "none";
            arrTemp[i].style.position = "absolute";
            arrTemp[i].style.top = "0";
            arrTemp[i].style.left = "0";
            arrTemp[i].style.width = boxWidth+"px";
            arrTemp[i].style.height = boxHeight+"px";
          }
        }
      }
      //处理当链接被点击时的事件
      scrollImg.prototype.clickA = function(m){
        with(this){
          if(typeof(m)=="undefined") m = currentImg+1;
          if(m>=arrA.length) m=0;
          //if(m==currentImg) return false;
          setDdStyle(-1);
          createNewDiv();
          //if(typeof(timeout)!="undefined") window.clearTimeout(timeout);
          doTimeOut("",0);
          showTarget = m;
          if(intScrollType==0){ showImg(showTarget); return; }
          objDiv.style.display = "";
          if(Math.abs(intScrollType)<3){
            var b = (showTarget>currentImg?showTarget:showTarget+arrDd.length)-currentImg;
            objDiv.style.width = (b+1)*boxWidth + "px";
            objDiv.style.height = (b+1)*boxHeight + "px";
            scrollDeriction = setObjPosition(objDiv,intScrollType,"0");
            for(var i=currentImg;i<=(b+currentImg);i++){
              var tempDd = objDiv.appendChild(arrDd[i%imgCount].cloneNode(true));
              //if(b>1){fr.value += (i+":"+imgCount+"<"+arrDd.length)+"＝"+tempDd.outerHTML;}
              addDdEvent(tempDd);
              tempDd.style.display = "";
              setObjPosition(tempDd,intScrollType,(i-currentImg)*(Math.abs(intScrollType)==1?boxWidth:boxHeight))
            }
            intPerStepTime = Math.ceil(intDuration / (b*(Math.abs(intScrollType)==1?boxWidth:boxHeight) / intStepPixel));
            intTemp = intStepPixel;
            if(intPerStepTime<20){
              intPerStepTime = 20;
              var intTemp = Math.ceil((Math.abs(intScrollType)==1?boxWidth:boxHeight)/(intDuration/intPerStepTime))
            }
            doScroll(intTemp);
          }else if(intScrollType<100){
            objDiv.style.width = boxWidth + "px";
            objDiv.style.width = boxHeight + "px";
            objDiv1.style.width = boxWidth + "px";
            objDiv1.style.width = boxHeight + "px";
            objDiv1.style.display = "";
            
            var tempDd = objDiv.appendChild(arrDd[intScrollType>0?showTarget:currentImg].cloneNode(true));
            tempDd.style.display = "";
            var tempDd = objDiv1.appendChild(arrDd[intScrollType>0?currentImg:showTarget].cloneNode(true));
            tempDd.style.display = "";
            if(Math.abs(intScrollType)>4&&Math.abs(intScrollType)<9){
              var intTemp = intScrollType>0?0:1;
              var arrTemp
              switch(Math.abs(intScrollType)){
                case 7: arrTemp = ["",0,"",0]; break;
                case 8: arrTemp = [0,0,"",""]; break;
                case 9: arrTemp = [0,"",0,""]; break;
                default: arrTemp = ["","",0,0]; break;
              }
              setObjPosition(objDiv,arrTemp);
              doZoom(intTemp);
            }else{
              doShift();
            }
          }else{
            doFilter();
          }
        }
      }
      //设置Dd的当前状态
      scrollImg.prototype.setDdStyle = function(m){
        with(this){
          for(var i=0;i<imgCount;i++){
            arrDd[i].style.display = i==m?"":"none";
          }
        }
      }
      scrollImg.prototype.addDdEvent = function(DdObj){
        with(this){
          DdObj.onmouseover = function(){
            //处理正在滚动时的鼠标滑入事件。
            doTimeOut("",0);
          }
          DdObj.onmouseout = function(){eval(strTimeout);}
        }
      }
      scrollImg.prototype.setObjPosition = function(Obj,intP,intValue){
        var arrTemp =["bottom","right","left","top"];
        if(intP instanceof Array){
          for(var i=0;i<intP.length;i++){ Obj.style[arrTemp[i]] = intP[i];}
        }else{
          intP += intP>0?1:2;
          Obj.style[arrTemp[intP]] = intValue + "px";
          Obj.style[arrTemp[3-intP]] = "";
          return arrTemp[intP];
        }
      }
      //直接显示目标，而隐藏其它
      scrollImg.prototype.showImg = function(to){
        with(this){
          createNewDiv();
          setDdStyle(to);
          for(var i=0;i<arrA.length;i++){
            arrA[i].className = i!=to?"":"activeA";
          }
          currentImg = to
          doTimeOut("clickA()",interval);
        }
      }
      //处理滚动事件
      scrollImg.prototype.doScroll = function(intPixel){
        with(this){
          var intTemp = parseInt(objDiv.style[scrollDeriction])-intPixel;
          if(boxWidth-intTemp<parseInt((Math.abs(intScrollType)==1?objDiv.style.width:objDiv.style.height))){
            objDiv.style[scrollDeriction] = intTemp+"px";
            doTimeOut("doScroll("+intPixel+")",intPerStepTime);
          }else{
            showImg(showTarget);
          }
        }
      }
      //处理变换事件
      scrollImg.prototype.doShift = function(){
        
      }
      //处理变换大小
      scrollImg.prototype.doZoom = function(intZ){
        with(this){
          var intTemp = (objDiv.style.zoom?parseFloat(objDiv.style.zoom):intZ) + (intZ==0?0.1:-0.1);
          if(intTemp<1&&intTemp>0){
            objDiv.style.zoom = intTemp;
            if(Math.abs(intScrollType)==5){
              
            }
            doTimeOut("doZoom("+intZ+")",intDuration/10);
          }else{
            showImg(showTarget);
          }
          //objDiv.style.zoom += 
        }
      }
      //处理滤镜事件
      scrollImg.prototype.doFilter = function(){
        
      }
    scrollImg.prototype.doTimeOut = function(strF,intT){
      with(this){
        if(typeof(timeout)!="undefined") window.clearTimeout(timeout);
        if(intT>0){
          strTimeout = selfName+"."+strF+";";
          this.timeout = window.setTimeout(strTimeout,intT);
        }
      }
      
    }
      
      //zoom
      //barn 滤镜
      //BlendTrans 淡入淡出
	  var m = new scrollImg();
	  m.boxId = "autoChangeBox";
	  m.interval = 3000;
	  m.strEvent = "click";
	  m.intScrollType = 0;
      var m1 = new scrollImg();
      m1.boxId = "autoChangeBox1";
      var m2 = new scrollImg();
      m2.boxId = "autoChangeBox2";
      var m3 = new scrollImg();
      m3.boxId = "autoChangeBox3";
      window.onload = function(){
	    m.initi("m");
        m1.initi("m1");
        m2.initi("m2");
        m3.initi("m3");
      }