Преимущества использования оператора if с эффектами отображения / скрытия в jQuery

#jquery

#jquery

Вопрос:

У меня есть следующий код, который я собираюсь использовать для нескольких HTML-элементов (конечно, с разными идентификаторами):

 $(document).ready(function(){
    $(".general").click(function(){
        $("#specific-1").slideDown("Slow", function() {
        });
    });
});
  

В чем разница, когда я добавляю if инструкцию перед запуском эффекта? Это медленнее? Предотвращает ли это ошибки любого типа?

 $(document).ready(function(){
    $(".general").click(function(){
        $("#specific-1").slideDown("Slow", function() {
            if ($(this).is(":visible"))
                $(this).css("display","flex");
        });
    });
});
  

Примечание: Я не тестировал код. Я полагаю, что при нажатии на .general он будет проверять, виден ли #specific-1 , если да, он установит для своего display свойства CSS значение flex . Дайте мне знать, если есть ошибки, через комментарии. Als

Комментарии:

1. Почему бы не реализовать предложенные вами изменения и не протестировать их самостоятельно? Ваш опыт из первых рук будет более надежным, чем то, что вы можете увидеть здесь из вторых рук…

2. if Условие находится внутри обратного вызова и ничего не делает для скольжения вниз, оно просто устанавливает отображение на flex , когда анимация завершена?

3. Как указано в комментариях , это :: Я полагаю, когда вы нажмете на .general, это проверит, виден ли #specific-1 :: не произойдет…

4. Верно! @аденео и ДаниП.