javascript输入淡入直接对焦

javascript input fade in and focus directly

我有一个搜索框,通过单击搜索图标,输入会展开。我想在展开后立即添加焦点。目前,当框展开时,用户必须在输入内单击才能搜索...

<script>
$('#icon_search_expand').on('click',function(){
    if($('#form_group_id').css('display')!='none'){
        $('#icon_search_expand').fadeIn(100, 'swing').hide();
        $('.search_button').fadeIn(100, 'swing').siblings('div').hide();
    }else if($('#icon_search_expand').css('display')!='none'){
        $('#form_group_id').fadeIn(100, 'swing').siblings('div').hide();
    }
  if($('#form_group_id').css('display')!='none'){
        $('#icon_search_expand').hide();
        $('.search_button').fadeIn(100, 'swing');
    }
});
</script>

<div class="form-group" id="form_group_id" style="display:none;">
    <input class="form-control" placeholder="{% trans "Search..." %}" type="text" name="q" value="{{ request.REQUEST.q }}" id="form_control_id">
</div>
        <i class="fa fa-search" aria-hidden="true" id="icon_search_expand"></i>
        <button type="submit" class="search_button" id="search_button_id" aria-hidden="true" value="" style="display:none !important;">
         <i class="fa fa-search" id="fa-search-id" aria-hidden="true"></i>
        </button>

你试过 focus() 吗

 $('input.form-control').focus();