var $textInput = $('[type="color"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="search"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], input:not([type]), textarea');

// Text Input Label Animation
$textInput.prev('label').addClass('loaded');
$textInput.each(function() {
  if( $(this).val() ) {
    $(this).prev('label').addClass('animate');
  }
});

$textInput.on('focus', function() {
  $(this).prev('label').addClass('animate');
}).on('focusout', function() {
  if( !$(this).val() ) {
    $(this).prev('label').removeClass('animate');
  }
});

// form error resolutions
$('form').has('.error').each(function(){
  var $form = $(this);

  $form.on('keyup', $textInput, function(){
    $form.find(".error").addClass('resolve-error');
  });

  $form.on('change', $("[type=radio], [type=checkbox]"), function(){
    $form.find(".error").addClass('resolve-error');
  });
});
