Jquery focusout 验证在 chrome 浏览器中无法正常工作

Jquery focusout validation is not working properly in chrome browser

我正在使用 jquery focusout 活动。我火狐它的工作完美。问题是(在 chrome 中)当我单击文本框时,我无法在不提供任何输入的情况下 select 另一个文本框。但它可以在 firefox 中。

HTML

<input type="text" id="first_name">
<div  id="error-firstname"></div>
<input type="text" id="last_name">
<div  id="error-lastname"></div>

Jquery

$('#first_name').on('focusout',function(){
  if($('#first_name').val()==''){
    $('#error-firstname').html('Please enter your first name.');
    $('#first_name').focus();
    return false;
  }else{
    $('#error-firstname').html('');
    return true;
  }
});
$('#last_name').on('focusout',function(){
  if($('#last_name').val()==''){
    $('#error-lastname').html('Please enter your last name.');
    $('#last_name').focus();
    return false;
  }else{
    $('#error-lastname').html('');
    return true;
  }
});

我们可以看到 运行 这段代码在 firefoxchrome 中的区别。

Jsfiddle

如何在 chrome 中制作这个 运行?

您不应该使用 'blur' 而不是 'focusout' 吗?我不确定是否存在。

看这里http://jsfiddle.net/ebd36j1p/,只需移除模糊事件处理程序中的焦点。

$('#first_name').on('blur',function(){
      if($('#first_name').val()==''){
        $('#error-firstname').html('Please enter your first name.');
      //  $('#first_name').focus();
        return false;
      }else{
        $('#error-firstname').html('');
        return true;
      }
    });
    $('#last_name').on('blur',function(){
      if($('#last_name').val()==''){
        $('#error-lastname').html('Please enter your last name.');
       // $('#last_name').focus();
        return false;
      }else{
        $('#error-lastname').html('');
        return true;
      }
    });