首页 新闻 搜索 专区 学院

报错:addClass is not a function

0
悬赏园豆:5 [已解决问题] 解决于 2017-04-24 10:44

Html页面中引用了Jq,为什么会报“addClass is not a function”?

这是html页面的代码:

<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="../js/script.js" ></script>

这是script.js页面:

(function(){
  var pageObj=document.getElementsByTagName("section");
  function scrootActive(){
    var seeH=document.documentElement.clientHeight;
    var scrooTops=document.documentElement.scrollTop||document.body.scrollTop;
    for(var i=0;i<pageObj.length;i++){
      if(pageObj[i].offsetTop<seeH+scrooTops){
        pageObj[i].addClass("active");
      }
    }
  }
  window.addEventListener("scroll",scrootActive,false);
})(jQuery);

忻韵的主页 忻韵 | 初学一级 | 园豆:184
提问于:2017-04-22 17:33
< >
分享
最佳答案
0

$(pageObj[i]).addClass("active");

收获园豆:5
by.Genesis | 老鸟四级 |园豆:2666 | 2017-04-22 22:53

为什么要加$呢?

忻韵 | 园豆:184 (初学一级) | 2017-04-24 10:22

@忻韵: 因为 addClass 是 jQuery 对象的方法,$(pageObj[i]) 或者 jQuery(pageObj[i]) 就是将原生 DOM 元素包装成 jQuery 对象

by.Genesis | 园豆:2666 (老鸟四级) | 2017-04-24 10:24

@by.Genesis: 哦,我知道了,那还可以改之前定义的var pageObj=$("section");

忻韵 | 园豆:184 (初学一级) | 2017-04-24 10:40
其他回答(1)
0

jQuery(pageObj[i]).addClass("active");

狼爷 | 园豆:1202 (小虾三级) | 2017-04-23 10:19

谢谢

支持(0) 反对(0) 忻韵 | 园豆:184 (初学一级) | 2017-04-24 10:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册