哪里错了 搞不懂。。。

哪里错了 搞不懂。。。

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>商场</title>
   <link rel="stylesheet" type="text/css" href="lunbo.css">
</head>
<body>
   <div class="main" id="main">
       <div class="banner" id="banner">
           <div class="slide slide1 slide-active">
               <a></a>
           </div>
           <div class="slide slide2">
              <a></a>
           </div>
           <div class="slide slide3">
              <a></a>
           </div>
       </div>

       <div>
           <a class="button" id="left"></a>
           <a class="button" id="right"></a>
       </div>

       <div class="yuandian" id="yuandian">
           <span class="active"></span>
           <span class=""></span>
           <span class=""></span>
       </div>

   </div>
   <script type="text/javascript" src="lunbo.js"></script>
</body>
</html>

*{
   margin:0px;
   padding: 0px;
}
.main{
   height:460px;
   width:1200px;
   margin:0px auto;
   overflow:hidden;
   position:relative;
}
.slide{
   height:460px;
   width:1200px;
   position:absolute;
   display:none;
}
.slide1{
   background:url("img/bg1.jpg");
}
.slide2{
   background:url("img/bg2.jpg");
}
.slide3{
   background:url("img/bg3.jpg");
}
.slide-active{
   display: block;
}
.button{
   background:url("img/arrow.png") no-repeat center center;
   position:absolute;
   top:50%;
   left:280px;
   margin-top:-40px;
   height:80px;
   width:40px;
}
.button:hover{
  background-color:#333;
   opacity:0.6;
   filter:alpha(opacity=80);
}
#left{
   transform:rotate(180deg);
}
#right{
   left:auto;
   right:0;
}
.yuandian{
   position:absolute;
   right:15px;
   bottom:20px;
   text-align: right;
}
span{
   width: 8px;
   height: 8px;
   margin-left: 8px;
   border-radius: 50%;
   display: inline-block;
   background: rgba(255, 255, 255,0.8);
   box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8) inset;
}
.active{
   background: rgba(29, 130, 254,0.8);
   box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8) inset;
}


var main=document.getElementById("main");
var banner=document.getElementById("banner");
var divs=banner.getElementsByTagName("div");
var left=document.getElementById("left");
var right=document.getElementById("right");
var yuandian=document.getElementById("yuandian");
var span=yuandian.getElementsByClassName("span");
var index=0;
var timer=null;


function lunbo() {
   main.onmouseover=function(){
       //鼠标停留某区域
       if(timer)clearInterval(timer);
   }
   main.onmouseout=function(){
       //鼠标划过离开某区域
       timer=setInterval(function(){
           index++;
           if(index==3){
               index=0;
           }
           changeImg();
       },3000)

   }
   main.onmouseout();
   left.onclick=function(){
       index--;
       if(index==-1) {
           index = 2;
       }
       changeImg();
   }
   right.onclick=function(){
       index++;
       if(index==3)
       {
           index=0;
       }
       changeImg();
   }
   for(var s=0;s<span.length;s++){  //圆点
       span[s].id=s;
       span[s].onclick=function(){
           index=this.id;
           for(var i=0;i<span.length;i++)
           {
               span[i].className="";
           }
           this.className="active";
           alert(1);
           changeImg();
       }

   }







}

function changeImg(){  //全局index索引改变图片

   for(var i=0;i<divs.length;i++)
   {
       span[i].className='';
       divarr[i].style.display='none';
   }
   divarr[index].style.display='block';
   span[index].className="active";
}
lunbo();



http://img1.sycdn.imooc.com//climg/5d9ad374096dbcaf05090173.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小班 2019-10-07 18:33:42

同学你好,复制运行贴出代码,测试输出span的内容,为空,例如

http://img1.sycdn.imooc.com//climg/5d9b132509fc9a9904520134.jpg

http://img1.sycdn.imooc.com//climg/5d9b13390936747c02870056.jpg

原因是通过标签获取内容注意使用getElementsByTagName。

http://img1.sycdn.imooc.com//climg/5d9b1389099619df04830091.jpg

2、这里老师并没有找到同学定义的divarr的内容,这里注意banner下的所有div是divs,而不是divarr

http://img1.sycdn.imooc.com//climg/5d9b147f093623ae04290231.jpg

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师