jQuery:我应该在隐藏元素之前检查可见性吗?

在隐藏元素之前检查元素是否可见是最佳做法,还是只是隐藏它? 无论哪种方式有什么好处?

在下面的示例中,第一个检查隐藏.foo元素之前的可见性…

 $('.dropdown').hover(function(){ $(this).find('.menu').fadeToggle(); if($('.foo').is(':visible')){ $('.foo').fadeOut(); }; }); 

要么

 $('.dropdown').hover(function(){ $(this).find('.menu').fadeToggle(); $('.foo').fadeOut(); }); 

这是来自jQuery的.fadeOut()规范的注释

注意:为避免不必要的DOM操作,.fadeOut()不会隐藏已被视为隐藏的元素。

所以,放松……隐藏已隐藏的元素没有错。 JQuery会为你检查它。