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

时间:2014-12-11 15:19:20

标签: javascript jquery performance

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

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

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

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

1 个答案:

答案 0 :(得分:3)

这是来自jQuery's .fadeOut() specs的说明:

  

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

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