.className问题 ,加粗部分

来源:4-1 无限滚动

慕九州9359096

2016-05-23 14:48

 </style>
   <script>
    window.onload = function(){
       var container = document.getElementById('container');
    var listImg = document.getElementById('listImg');
    var buttons = document.getElementById('buttons');
    var next = document.getElementById('next');
    var prev = document.getElementById('prev');
    var index = 1;
    function animate(offset){
         var newlist = parseInt(listImg.style.left)+offset;
      listImg.style.left = newlist + 'px';
     if(newlist > -700){
         listImg.style.left = -3500 + 'px';
     }
     if(newlist < -3500){
         listImg.style.left = -700 + 'px';
     }
    }
    function showButtons(){
        buttons[index-1].className = 'on';     在这用className浏览器报  ‘Uncaught TypeError: Cannot set property 'className' of undefined ’ 这个错呢

    }


    next.onclick = function(){
        showButtons();
        animate(-700);
    }
    prev.onclick = function(){
        animate(700);
    }
    }
   
   </script>

写回答 关注

2回答

  • Sunnylincon
    2016-06-09 20:52:31

    注意你第六行写的是var buttons = document.getElementById('buttons');这样获取的只是一个对象,此时buttons[index-1]这个是不存在的,自然也没有相对应的className,应当改成var buttons=document.getElementById('buttons').getElementsByTagName('span'),此时buttons才是一个数组

    xuyy56...

    完美解答了我的问题

    2016-08-13 00:32:53

    共 1 条回复 >

  • 慕雪1824825
    2016-05-23 15:13:46

    是不是js代码放的位置有问题?

    慕九州935...

    应该放在哪呢?

    2016-05-24 09:00:30

    共 1 条回复 >

焦点图轮播特效

通过本教程学习您将能掌握非常实用的焦点图轮播特效的制作过程

65296 学习 · 611 问题

查看课程

相似问题