jQuery:fadeIn()不适合我,语法错误?

时间:2015-02-12 22:50:11

标签: javascript jquery fadein fadeout

我正在使用鼠标悬停& mouseleave淡入/淡出我的登录/注册按钮。但我不能让他们再次淡出?我尝试了一些东西,我在谷歌上发现的一切都证实我的语法很好吗?我不确定。

$( document ).ready(function() {

  $('.sign-up').on('mouseover', function(){
    $(this).fadeTo(200, .2)
  })


  $('.sign-up').on('mouseleave', function(){
      $(this).fadeIn(200)
  })

  $('.log-in').on('mouseover', function(){
    $(this).fadeTo(200, .2)
  })


  $('.log-in').on('mouseleave', function(){
      $(this).fadeIn(200)
  })

});

1 个答案:

答案 0 :(得分:2)

fadeTo方法操纵元素的opacity属性。您应该改为使用fadeOut或再次使用fadeTo而不是fadeInfadeInfadeOut操纵display属性。

$(this).fadeTo(200, 1);

您还可以缩小代码:

$( document ).ready(function() {
   $('.sign-up, .log-in').on('mouseenter mouseleave', function(e) {
      $(this).fadeTo(200, e.type === "mouseenter" ? .2 : 1);
   });
});