在隐藏元素之前检查元素是否可见是最佳做法,还是只是隐藏它?无论哪种方式都有什么好处?
在下面的示例中,第一个检查可见性,然后隐藏.foo
元素...
$('.dropdown').hover(function(){
$(this).find('.menu').fadeToggle();
if($('.foo').is(':visible')){
$('.foo').fadeOut();
};
});
或
$('.dropdown').hover(function(){
$(this).find('.menu').fadeToggle();
$('.foo').fadeOut();
});
答案 0 :(得分:3)
这是来自jQuery's .fadeOut() specs的说明:
注意:为避免不必要的DOM操作,.fadeOut()不会隐藏已被视为隐藏的元素。
所以,放松......隐藏已隐藏的元素没有错。 JQuery会为你检查它。