2017-01-24 5 views
-1

Я пытаюсь сделать это, когда вы нажимаете на различные вкладки на панели навигации, кнопка не будет отображаться, если вы находитесь на вкладке 1, но будет отображаться в любое другое время. Я использую отзывчивые вкладки (https://github.com/jellekralt/Responsive-Tabs).Как подождать добавления класса с помощью ответных вкладок, прежде чем проверять, какая вкладка активна?

$('.nav').click(function() { 
     if($('#tab-1').hasClass('active')) 
     { 
      $('#register-now-button').attr('style', 'display:none'); 
     } else { 
      $('#register-now-button').attr('style', 'display:flex'); 
     } 
    }); 

Приведенный выше код работает только во второй раз, когда вы нажимаете. Я понимаю, что hasClass ('active') верен только во второй раз, когда вы нажимаете на вкладку 1. Он проверяет, имеет ли вкладка 1 класс, активный до добавления класса. Как я могу сказать, что ждать до тех пор, пока активный класс не будет добавлен, чтобы отключить атрибуты? Класс «active» добавляется ответными вкладками.

+0

предоставьте полный код (html, css, js) –

ответ

0

Я исправил его, завернув его в функцию проверки с тайм-аутом!

$('.nav').click(function() { 
     var check = function() { 
      if($('#tab-1').hasClass('active')) 
      { 
       $('#register-now-button').attr('style', 'display:none'); 
      } else { 
       $('#register-now-button').attr('style', 'display:flex'); 
      } 
     } 
     setTimeout(check, 200); 
    }); 

 Смежные вопросы

  • Нет связанных вопросов^_^