firefox中的jquery fadein淡出问题

时间:2011-08-11 10:05:36

标签: javascript jquery

我想最初隐藏.noteHover然后使用一个悬停事件,它会使这个类淡入淡出,然后很快就会消失。这似乎在chrome中运行良好,但我的问题是在ff .noteHover仍然是display:none,这会阻止fadein淡出效果,有人可以提供一些建议,我会出错吗?

这是我的代码:

/* Hover test */
        /* Hover test */        
        var $notes = $('.note');

        $notes.each(function() {
         var thisNote = $(this);
         var nestedNoteHover = thisNote.find('.noteHover');
         var nestedPath = thisNote.find('path');

         nestedNoteHover.hide();

         thisNote.hover(
          function() {
            nestedPath.css('opacity', 0.8);
            nestedNoteHover.fadeIn(100, function() {
            nestedNoteHover.fadeOut(300);
           });
          },
          function() {
           nestedPath.css('opacity', 1);
          }
         );
        });

我已经更新了代码,但ff仍然没有变化?

谢谢!

2 个答案:

答案 0 :(得分:1)

我可能在这里错了,但在查看jQuery`s find method 后,我认为不是

$(this).find($noteHover).fadeIn(100).fadeOut(300);

它应该是:

$noteHover.fadeIn(100).fadeOut(300); // the variable you declared above...

答案 1 :(得分:0)

如果我理解你的要求,这将做你想要的:

var noteHover = $('.noteHover').hide();
$('.note').hover(function() { /* on mouse enter */
    noteHover.fadeIn(400).fadeOut(100);
}, function() { /* on mouse out */
    noteHover.hide();   
});

Demo here