2013-10-13 2 views
2

У меня this jsbin прототип, с двумя пунктами меню, которые показывают подменю на мыши:JQuery выцветанию() не выцветания

screenshot of jsbin

Видимость подменю контролируется fadeIn() и fadeOut. Однако непрозрачность не оживляет. Он просто ждет указанного времени, а затем полностью появляется или полностью скрывается. Без выцветания.

код очень прост, так что я очень озадачен ...

(function(){ 
    var activeMenu = null; 
    var animation = { 
    duration: 250, 
    queue: true 
    }; 
    $(document).click(function(){ 
    if(activeMenu) { 
     $(activeMenu).removeClass('active-nav-item'); 
     $(activeMenu).find('.nav-group').fadeOut(animation); 
     activeMenu = null; 
    } 
    }); 
    $.fn.simpleMenu = function() { 
    $(this).children('.nav-item:has(.nav-group)').each(function(i,e) { 
     $(e).click(function() { 
     if(activeMenu) { 
      $(activeMenu).removeClass('active-nav-item'); 
      $(activeMenu).find('.nav-group').fadeOut(animation); 
     } 
     if(activeMenu !== e) { 
      activeMenu = e; 
      $(activeMenu).addClass('active-nav-item'); 
      $(activeMenu).find('.nav-group').fadeIn(animation); 
      return false; 
     } 
     }); 
    }); 
    }; 
})(); 

$('.global-nav').simpleMenu(); 
$('.meta-nav').simpleMenu(); 
+1

Это должен быть ваш CSS. Я добавил тэг 'p', и он не исчез, а просто исчез. После гашения вашего CSS он исчез, как обычно. –

ответ

3

Я не уверен на 100%, но я думаю, что это ваша проблема линия:

* { 
    -webkit-transition: all 0.2s ease-in-out; 
    transition: all 0.2s ease-in-out; 
} 

Удалив это и ничего не меняя, он работает так, как ожидалось.

http://jsbin.com/ADINIDI/7

Смежные вопросы