jquery使用if / else语句悬停

时间:2013-04-01 13:55:48

标签: jquery if-statement hover

我有一个我想要使用的悬停状态,但是只有当不透明度不是.65时,这就是我所拥有的,但它不是很有效,不确定如何更改它。提前感谢您的帮助。

$('.info_btn').hover(
  var jthis = this;
  if($('.info_btn').css('opacity') == 0.65) { }
  else {
    function() {
        $(jthis).css({
              "opacity": "0.7",
              "-moz-opacity": "0.7",
              "filter": "alpha(opacity = 70)"
        });
    }, function() {
        $(jthis).css({
              "opacity": "0.2",
              "-moz-opacity": "0.2",
              "filter": "alpha(opacity = 20)"
        });
    }
  }
); 

2 个答案:

答案 0 :(得分:2)

此事件仅将事件绑定到.info_btnopaticy == 0.65元素。如果您有很多.info_btn元素

,则非常有用
        $('.info_btn').filter(function () {
           return parseFloat($(this).css('opacity')) == 0.65
        }).on({
              mouseover: function () {
                 $(this).css({
                    "opacity": "0.7",
                    "-moz-opacity": "0.7",
                    "filter": "alpha(opacity = 70)"
                 });
              },
              mouseout: function () {
                 $(this).css({
                    "opacity": "0.2",
                    "-moz-opacity": "0.2",
                    "filter": "alpha(opacity = 20)"
                 });
              }
           });

让您在一个地方保持条件opacity == 0.65,不会将事件附加到额外的.info_btn元素。

答案 1 :(得分:1)

$('.info_btn').mouseover(function() {
     if($(this).css('opacity') == 0.65) { }
});

这就是您在问题中所描述的所有内容。

鼠标悬停和悬停有点相同 http://api.jquery.com/mouseover/
http://api.jquery.com/hover/