对象不支持addClass方法

来源:6-2 使用JS为元素class赋值

NadiaSmile

2016-08-23 10:25

用JS给元素addClass,removeClass  但是在浏览器运行时没有效果,控制台输出对象不支持addClass属性或方法

if (currentId){
   // 给正确的menu下得a元素赋值
   for(var j=0;j<menus.length;j++){
       var menu = menus[j];
       var _href = menu.href.split("#");
       if (_href[_href.length-1] != currentId){
           menu.removeClass("current");
       }else {
           menu.addClass("current");
       }
   }

}

写回答 关注

1回答

  • pluvieuse
    2016-08-23 12:13:41
    已采纳

    老师说原生JS里没有removeClass和addClass这个方法,要实现addClass方法的功能,需要构建一个addClass函数,

    function addClass(obj,cls){

    if (!hasClass(obj,cls)) {

    obj.className += " " +cls;

    }

    然后调用这个函数

    if (_href[_href.length-1] != currentId) {

    removeClass(_menu,"current");

    }else{

    addClass(_menu,"current");


    NadiaS...

    谢谢。。。 我纠结老半天这个问题,后来直接提问去看下一集,才发现js没有这个方法。。。

    2016-08-23 12:29:23

    共 1 条回复 >

网页定位导航特效

本课程讲解网页定位导航特效,仿天猫版地狗购物网,你值得拥有

71394 学习 · 504 问题

查看课程

相似问题