我无法将类添加到我的<;a>;元素,而不是javascript或jquery(删除works!)

我无法将类添加到我的<;a>;元素,而不是javascript或jquery(删除works!),javascript,jquery,twitter-bootstrap,addclass,Javascript,Jquery,Twitter Bootstrap,Addclass,似乎这是一个大问题(添加类)。我经历了许多相关的问题,但我无法解决它。下面是javascript代码。删除类很好,但正如您所看到的,我已经测试了多种添加类的方法,但这些方法都不起作用!!我使用firebug,它显示了类的删除,但是添加类时没有发生任何事情。 我将非常感谢你的帮助 我使用的是twitter引导,当我在表中任何一行的链接上悬停时,徽章应该会变成新的链接。它将移除徽章类,但不会将其添加到新链接中 function setBadgeClass(theElement){ class

似乎这是一个大问题(添加类)。我经历了许多相关的问题,但我无法解决它。下面是javascript代码。删除类很好,但正如您所看到的,我已经测试了多种添加类的方法,但这些方法都不起作用!!我使用firebug,它显示了类的删除,但是添加类时没有发生任何事情。 我将非常感谢你的帮助

我使用的是twitter引导,当我在表中任何一行的链接上悬停时,徽章应该会变成新的链接。它将移除徽章类,但不会将其添加到新链接中

function setBadgeClass(theElement){
    classes = theElement[0].classList
    if (classes.contains("m_m_c5")){
        return "badge-inverse"
    }
    if (classes.contains("m_m_c3")){
        return "badge-info"
    }
    if (classes.contains("i_m_c5")){
        return "badge-important"
    }
    if (classes.contains("i_m_c3")){
        return "badge-success"
    }
}


function hoverImage(){
    $(".hoverImage").hover(
        function() {
            source = $(this).attr('href');
            target = $(this).attr('target');
            var image = document.getElementById(target);
            image.setAttribute("src", source);

            badgeClass = setBadgeClass($(this));

            //search for any other element with this badge class
            badgeDot = "." + badgeClass;
            badgedElement = $(badgeDot);
            //remove its two badge classes
            badgedElement.removeClass("badge");
            badgedElement.removeClass(badgeClass);
            //attach the badge class to the  theElement
            theElement[0].classList.addClass("badge");
            theElement[0].classList.addClass(badgeClass);
            //theElement.className += " badge";
            //theElement.className += " "+badgeClass;
            //d.className = d.className + " otherclass";
            //theElement.addClass("badge");
            //theElement.addClass(badgeClass);

        })
}


//as soon as the page is loaded...
window.onload = function (){
    hoverImage();
};
(部分)Html如下所示

<table class="table table-bordered table-condensed">
  <tbody>
    <tr>
      <th class="label label-inverse">CMIP5</th>
      <td>
        <a href="images_001/prec_001_CMIP5_Bias.rcp45.ANN.MultiModel.Max.nc.png" target="iframe_multi_model_5" class="m_m_c5     hoverImage badge badge-inverse"><small>Max </small></a>
        <a target="iframe_multi_model_5" href="images_001/prec_001_CMIP5_Bias.rcp45.ANN.MultiModel.Median.nc.png" class="m_m_c5     hoverImage"><small>Med </small></a>
        <a target="iframe_multi_model_5" href="images_001/prec_001_CMIP5_Bias.rcp45.ANN.MultiModel.Min.nc.png" class="m_m_c5 hoverImage    "><small>Min </small></a>
      </td>                     
    </tr>                  
  </tbody>
</table>
<script src="../js/jquery.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script src="../js/linkhover2.js"></script>    

CMIP5

我很抱歉!!我刚忘了介绍这个元素!!我用了$(这个)!
谢谢大家花时间回答

为什么有一个名为
setBadgeClass
的函数实际上没有设置任何内容
getBadgeClass
更合适。为什么要在classlist->
the元素[0]上操作。classlist.addClass(“badge”)只需使用
元素[0]。添加类(“徽章”)
在声明源、目标、类等变量时没有“var”是有原因的吗?另外,
元素。classList
没有
addClass
属性,只是
add
@luk2302删除注释第二段中的
[0]