在悬停时切换类?

时间:2012-04-23 17:22:40

标签: javascript jquery

我写了以下代码:

$(document).ready(function () {
    $("#rade_img_map_1335199662212").hover(function () {
        $("li#rs1").addClass("active");  //Add the active class to the area is hovered
    }, function () {
        $("li#rs1").addClass("not-active");
    });
});

问题是它似乎没有在悬停时切换班级吗?

但是我怎样才能让它根据悬停和非悬停来切换类??

2 个答案:

答案 0 :(得分:10)

请勿在悬停时添加其他类,只需删除active

即可
$(document).ready(function(){

  $("#rade_img_map_1335199662212").hover(function(){

      $("li#rs1").addClass("active");  //Add the active class to the area is hovered
  }, function () {
      $("li#rs1").removeClass("active");
  });

});

或者如果所有元素一开始都处于非活动状态,您可以使用单个函数和toggleClass()方法

$(document).ready(function(){

  $("#rade_img_map_1335199662212").hover(function(){
      $("li#rs1").toggleClass("active");  //Toggle the active class to the area is hovered
  });

});

答案 1 :(得分:1)

尝试如下,

  $(document).ready(function () {    
      $("#rade_img_map_1335199662212").hover(function () {    
          $("#rs1")
             .removeClass("not-active")
             .addClass("active");  //Add the active class to the area is hovered
      }, function () {
          $("#rs1")
             .removeClass("active");
             .addClass("not-active");
      });    
  });