一个页面有2处图片轮播的地方,调用同一段JS只能有一处能正常实现,~尝试过吧方法名和变量名都改了还是不行。高手帮我解决下,先谢谢了HTML代码:
<div id="hot_sale_lb>
              <dl class="now">
                <dd><a href="###"><img src="images/producupic/lunbo-1.jpg" title=""></a></dd>
              </dl>
              <dl style="display:none">
                <dd><a href="###"><img src="images/producupic/lunbo-2.jpg" title=""></a></dd>
             </dl>
               <dl style="display:none">
                <dd><a href="###"><img src="images/producupic/lunbo-3.jpg" title=""></a></dd>
             </dl>
              <dl style="display:none">
                <dd><a href="###"><img src="images/producupic/lunbo-4.jpg" title=""></a></dd>
             </dl>
              <ul class="clearfix">
                <li class="now"><a href="###">1</a></li>
                <li><a href="###">2</a></li>
                <li><a href="###">3</a></li>
                <li><a href="###">4</a></li>
             </ul>
           </div> JS代码:
<script>
function $(id){return document.getElementById(id)}//获取ID节点的简介方法
var tags=$("lunbo").getElementsByTagName("li");//获取切换按钮节点
var cats=$("lunbo").getElementsByTagName("dl");//获取切换内容节点var current=null;//设置当前帧的变量容器
var timer=8000;//
var op=0;  
function disAll(){//初始所有标签样式
 for(var i=0; i<tags.length; i++){
       tags[i].className="";
       cats[i].className="";
    cats[i].style.display="none";
  }
  }
function setNow(){//获取当前帧的索引值
  for(var i=0; i<tags.length; i++){
    if(tags[i].className=="now"){
          current=i;    
         }
   } 
}
for(var j=0; j<tags.length; j++){//设置手动切换
    tags[j].onmouseover=function(){ 
   show();
    clearInterval(h);  
     disAll();   
      this.className="now";
    setNow();   
     cats[current].style.display="block";
     cats[current].className="now";   
      }
   tags[j].onmouseout=function(){
         setNow();    
      }
    }
function goNext(){//自动切换
   setNow();//获取当前帧索引
   current+=1;//帧自增1
  if(current>=tags.length){//判断:如果当前帧索引值是否大于切换按钮总数,如果大于按钮总数则回到初始状态
    current=0;
      disAll();
   show(); 
       cats[0].style.display="block";
    
        tags[0].className="now";
         cats[0].className="now";
        }
    else{
       disAll();      
      show(); 
   cats[current].style.display="block";   
      cats[current].className="now";
         tags[current].className="now";      
   }
}
var h=setInterval("goNext()",timer)//开始自动切换
//渐变效果 only for FF
function show(){
      op+=20;
       if(op>100){
     op=0;  
     clearTimeout(t);
      h=setInterval("goNext()",timer);                
               }
     else{
       clearInterval(h); 
       var t=setTimeout("show()",100); 
    
   


         }
 
  }
</script>