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会为你检查它。